/* 家兴官网合并样式 —— 由 27 个源文件合并；tokens 在顶部；组件 API 在末尾（.jx-*）；构建版本 20261028h */
:root {
  color-scheme: light;
  --ink: var(--jx-ink);
  --muted: var(--jx-muted);
  --line: var(--jx-line);
  --paper: var(--jx-paper);
  --white: #ffffff;
  --coral: var(--jx-green);
  --coral-deep: var(--jx-deep);
  --coral-soft: #edf2e8;
  --blue: var(--jx-green);
  --teal: var(--jx-green);
  --dark: #093e2d;
  --shadow: 0 16px 42px rgba(9, 62, 45, 0.12);
  --max: 1280px;
  --jx-green: #155d43;
  --jx-green-deep: var(--jx-deep);
  --jx-orange: #e77935;
  --jx-lime: #b8ca4b;
  --jx-paper: #f6f5ef;
  --jx-ink: #173328;
  --jx-deep: #093e2d;
  --jx-muted: #63716a;
  --jx-line: #dce4dc;
  --color-ink: #093e2d;
  --color-primary: #155d43;
  --color-primary-deep: #0c4a35;
  --color-accent: #d96f2e;
  --color-paper: #f7f6f0;
  --color-surface: #ffffff;
  --color-line: #dbe3d6;
  --color-line-soft: #e7ede1;
  --color-muted: #56685c;
  --color-muted-2: #7a8a7e;
  --radius-s: 8px;
  --radius-m: 12px;
  --radius-l: 20px;
  --shadow-soft: 0 1px 2px rgba(9, 62, 45, 0.05);
  --shadow-lift: 0 20px 46px -28px rgba(9, 62, 45, 0.42);
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 48px;
  --space-6: 64px;
}

/* ===== styles/brand-utilities.css ===== */
/* Generated by scripts/unify-brand.mjs from tailwind.generated.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(40, 115, 79, .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(40, 115, 79, .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:Microsoft YaHei,PingFang SC,Noto Sans SC,Arial,sans-serif;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: #b8ca4b}input::placeholder,textarea::placeholder{opacity:1;color: #b8ca4b}[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}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-3{inset:.75rem}.inset-8{inset:2rem}.inset-x-0{left:0;right:0}.-bottom-28{bottom:-7rem}.-bottom-32{bottom:-8rem}.-bottom-5{bottom:-1.25rem}.-bottom-6{bottom:-1.5rem}.-bottom-7{bottom:-1.75rem}.-bottom-8{bottom:-2rem}.-left-24{left:-6rem}.-left-6{left:-1.5rem}.-left-8{left:-2rem}.-right-28{right:-7rem}.-right-5{right:-1.25rem}.-right-6{right:-1.5rem}.-top-10{top:-2.5rem}.-top-6{top:-1.5rem}.bottom-0{bottom:0}.bottom-7{bottom:1.75rem}.bottom-8{bottom:2rem}.bottom-\[-20px\]{bottom:-20px}.left-0{left:0}.left-1\/2{left:50%}.left-6{left:1.5rem}.left-7{left:1.75rem}.left-8{left:2rem}.left-\[10px\]{left:10px}.left-\[20px\]{left:20px}.right-0{right:0}.right-5{right:1.25rem}.right-6{right:1.5rem}.right-7{right:1.75rem}.right-8{right:2rem}.right-\[-20px\]{right:-20px}.top-0{top:0}.top-1\/2{top:50%}.top-1\/3{top:33.333333%}.top-10{top:2.5rem}.top-20{top:5rem}.top-24{top:6rem}.top-32{top:8rem}.top-5{top:1.25rem}.top-6{top:1.5rem}.top-7{top:1.75rem}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[120\]{z-index:120}.z-\[9999\]{z-index:9999}.m-auto{margin:auto}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-16{margin-top:4rem;margin-bottom:4rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mt-12{margin-top:-3rem}.-mt-20{margin-top:-5rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-24{margin-bottom:6rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.mr-1{margin-right:.25rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-32{margin-top:8rem}.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}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[16\/10\]{aspect-ratio:16/10}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-52{height:13rem}.h-56{height:14rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[220px\]{height:220px}.h-\[360px\]{height:360px}.h-\[420px\]{height:420px}.h-\[430px\]{height:430px}.h-\[460px\]{height:460px}.h-\[480px\]{height:480px}.h-full{height:100%}.h-px{height:1px}.max-h-\[78vh\]{max-height:78vh}.\!min-h-\[52px\]{min-height:52px!important}.\!min-h-\[54px\]{min-height:54px!important}.min-h-0{min-height:0}.min-h-12{min-height:3rem}.min-h-\[320px\]{min-height:320px}.min-h-\[340px\]{min-height:340px}.min-h-\[420px\]{min-height:420px}.min-h-\[620px\]{min-height:620px}.min-h-\[640px\]{min-height:640px}.min-h-\[660px\]{min-height:660px}.min-h-\[680px\]{min-height:680px}.min-h-\[720px\]{min-height:720px}.min-h-screen{min-height:100vh}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3\/5{width:60%}.w-36{width:9rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-56{width:14rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[2px\]{width:2px}.w-\[58\%\]{width:58%}.w-\[60\%\]{width:60%}.w-\[66\%\]{width:66%}.w-\[72\%\]{width:72%}.w-\[76\%\]{width:76%}.w-\[84\%\]{width:84%}.w-\[86\%\]{width:86%}.w-\[860px\]{width:860px}.w-\[88\%\]{width:88%}.w-\[89\%\]{width:89%}.w-\[90\%\]{width:90%}.w-\[900px\]{width:900px}.w-\[92\%\]{width:92%}.w-\[min\(82\%\2c 320px\)\]{width:min(82%,320px)}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[118px\]{min-width:118px}.min-w-\[132px\]{min-width:132px}.min-w-\[148px\]{min-width:148px}.min-w-full{min-width:100%}.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-\[1500px\]{max-width:1500px}.max-w-\[680px\]{max-width:680px}.max-w-\[760px\]{max-width:760px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.shrink-0{flex-shrink:0}.origin-top{transform-origin:top}.-translate-x-1\/2{--tw-translate-x: -50%}.-translate-x-1\/2,.translate-y-0{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))}.translate-y-0{--tw-translate-y: 0px}.translate-y-12{--tw-translate-y: 3rem}.rotate-180,.translate-y-12{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))}.rotate-180{--tw-rotate: 180deg}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1}.scale-100,.scale-95{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))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95}.scale-y-0{--tw-scale-y: 0}.scale-y-0,.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))}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-mt-20{scroll-margin-top:5rem}.scroll-mt-36{scroll-margin-top:9rem}.scroll-mt-44{scroll-margin-top:11rem}.scroll-mt-56{scroll-margin-top:14rem}.list-decimal{list-style-type:decimal}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-between{align-content:space-between}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-14{gap:3.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}.space-y-14>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3.5rem*var(--tw-space-y-reverse))}.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-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width: calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width: calc(1px*var(--tw-divide-y-reverse))}.divide-slate-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color: rgb(241 245 249/var(--tw-divide-opacity,1))}.divide-slate-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color: rgb(226 232 240/var(--tw-divide-opacity,1))}.divide-white\/10>:not([hidden])~:not([hidden]){border-color: hsla(0,0%,100%,.1)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.scroll-smooth{scroll-behavior:smooth}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius: .25rem}.rounded-2xl{border-radius: 1rem}.rounded-3xl{border-radius: 1.5rem}.rounded-\[1\.35rem\]{border-radius: 1.35rem}.rounded-\[1\.4rem\]{border-radius: 1.4rem}.rounded-\[1\.5rem\]{border-radius: 1.5rem}.rounded-\[1\.6rem\]{border-radius: 1.6rem}.rounded-\[1\.75rem\]{border-radius: 1.75rem}.rounded-\[1\.7rem\]{border-radius: 1.7rem}.rounded-\[1\.8rem\]{border-radius: 1.8rem}.rounded-\[1\.9rem\]{border-radius: 1.9rem}.rounded-\[2\.1rem\]{border-radius: 2.1rem}.rounded-\[2\.25rem\]{border-radius: 2.25rem}.rounded-\[2\.2rem\]{border-radius: 2.2rem}.rounded-\[2\.3rem\]{border-radius: 2.3rem}.rounded-\[2\.4rem\]{border-radius: 2.4rem}.rounded-\[2\.5rem\]{border-radius: 2.5rem}.rounded-\[2\.6rem\]{border-radius: 2.6rem}.rounded-\[28px\]{border-radius: 28px}.rounded-\[2rem\]{border-radius: 2rem}.rounded-\[32px\]{border-radius: 32px}.rounded-\[3rem\]{border-radius: 3rem}.rounded-full{border-radius: 9999px}.rounded-lg{border-radius: .5rem}.rounded-md{border-radius: .375rem}.rounded-xl{border-radius: .75rem}.border{border-width: 1px}.border-2{border-width: 2px}.border-8{border-width: 8px}.border-y{border-top-width: 1px}.border-b,.border-y{border-bottom-width: 1px}.border-b-2{border-bottom-width: 2px}.border-l{border-left-width: 1px}.border-l-4{border-left-width: 4px}.border-t{border-top-width: 1px}.border-t-4{border-top-width: 4px}.\!border-\[\#5b7f62\]\/35{border-color: rgba(40, 115, 79, .35)!important}.\!border-white\/25{border-color: hsla(0,0%,100%,.25)!important}.\!border-white\/30{border-color: hsla(0,0%,100%,.3)!important}.\!border-white\/35{border-color: hsla(0,0%,100%,.35)!important}.border-\[\#0d9488\]{--tw-border-opacity: 1;border-color: rgb(13 148 136/var(--tw-border-opacity,1))}.border-\[\#0f766e\]{--tw-border-opacity: 1;border-color: rgb(15 118 110/var(--tw-border-opacity,1))}.border-\[\#27372f\]{--tw-border-opacity: 1;border-color: rgb(39 55 47/var(--tw-border-opacity,1))}.border-\[\#334155\]{--tw-border-opacity: 1;border-color: rgb(51 65 85/var(--tw-border-opacity,1))}.border-\[\#6388bd\]{--tw-border-opacity: 1;border-color: rgb(99 136 189/var(--tw-border-opacity,1))}.border-\[\#8c5a2b\]{--tw-border-opacity: 1;border-color: rgb(140 90 43/var(--tw-border-opacity,1))}.border-\[\#b7791f\]{--tw-border-opacity: 1;border-color: rgb(183 121 31/var(--tw-border-opacity,1))}.border-\[\#d6f2c6\]{--tw-border-opacity: 1;border-color: rgb(214 242 198/var(--tw-border-opacity,1))}.border-\[\#dbe4d7\]{--tw-border-opacity: 1;border-color: rgb(219 228 215/var(--tw-border-opacity,1))}.border-\[\#e4dccd\]{--tw-border-opacity: 1;border-color: rgb(228 220 205/var(--tw-border-opacity,1))}.border-\[\#e6e0d7\]{--tw-border-opacity: 1;border-color: rgb(230 224 215/var(--tw-border-opacity,1))}.border-\[\#e84a4f\]{--tw-border-opacity: 1;border-color: rgb(232 74 79/var(--tw-border-opacity,1))}.border-\[\#e9dccf\]{--tw-border-opacity: 1;border-color: rgb(233 220 207/var(--tw-border-opacity,1))}.border-\[\#eadfd2\]{--tw-border-opacity: 1;border-color: rgb(234 223 210/var(--tw-border-opacity,1))}.border-\[\#ecd9c8\]{--tw-border-opacity: 1;border-color: rgb(236 217 200/var(--tw-border-opacity,1))}.border-\[\#f2ddd6\]{--tw-border-opacity: 1;border-color: rgb(242 221 214/var(--tw-border-opacity,1))}.border-\[\#f3d6cc\]{--tw-border-opacity: 1;border-color: rgb(243 214 204/var(--tw-border-opacity,1))}.border-\[\#f3ded7\]{--tw-border-opacity: 1;border-color: rgb(243 222 215/var(--tw-border-opacity,1))}.border-\[\#ff5a5f\]{--tw-border-opacity: 1;border-color: rgb(255 90 95/var(--tw-border-opacity,1))}.border-amber-100{--tw-border-opacity: 1;border-color: rgb(254 243 199/var(--tw-border-opacity,1))}.border-amber-100\/25{border-color: hsla(48,96%,89%,.25)}.border-amber-200{--tw-border-opacity: 1;border-color: rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-300\/20{border-color: rgba(184, 202, 75, .2)}.border-amber-300\/30{border-color: rgba(184, 202, 75, .3)}.border-amber-400{--tw-border-opacity: 1;border-color: rgb(251 191 36/var(--tw-border-opacity,1))}.border-black\/5{border-color: rgba(0,0,0,.05)}.border-blue-100{--tw-border-opacity: 1;border-color: rgb(219 234 254/var(--tw-border-opacity,1))}.border-blue-400\/50{border-color: rgba(184, 202, 75, .5)}.border-blue-600{--tw-border-opacity: 1;border-color: rgb(37 99 235/var(--tw-border-opacity,1))}.border-cyan-100{--tw-border-opacity: 1;border-color: rgb(207 250 254/var(--tw-border-opacity,1))}.border-cyan-200\/25{border-color: rgba(213, 226, 207, .25)}.border-cyan-300\/10{border-color: rgba(184, 202, 75, .1)}.border-cyan-300\/15{border-color: rgba(184, 202, 75, .15)}.border-cyan-300\/20{border-color: rgba(184, 202, 75, .2)}.border-cyan-300\/25{border-color: rgba(184, 202, 75, .25)}.border-cyan-400\/50{border-color: rgba(40, 115, 79, .5)}.border-emerald-300\/20{border-color: rgba(184, 202, 75, .2)}.border-gray-100{--tw-border-opacity: 1;border-color: rgb(243 244 246/var(--tw-border-opacity,1))}.border-indigo-500{--tw-border-opacity: 1;border-color: rgb(99 102 241/var(--tw-border-opacity,1))}.border-indigo-500\/70{border-color: rgba(184, 202, 75, .7)}.border-indigo-700{--tw-border-opacity: 1;border-color: rgb(67 56 202/var(--tw-border-opacity,1))}.border-orange-100{--tw-border-opacity: 1;border-color: rgb(255 237 213/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity: 1;border-color: rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-600{--tw-border-opacity: 1;border-color: rgb(234 88 12/var(--tw-border-opacity,1))}.border-purple-100{--tw-border-opacity: 1;border-color: rgb(243 232 255/var(--tw-border-opacity,1))}.border-purple-400\/50{border-color: rgba(213, 226, 207, .5)}.border-red-100{--tw-border-opacity: 1;border-color: rgb(254 226 226/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity: 1;border-color: rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300\/20{border-color: hsla(0,94%,82%,.2)}.border-red-400\/40{border-color: hsla(0,91%,71%,.4)}.border-red-50{--tw-border-opacity: 1;border-color: rgb(254 242 242/var(--tw-border-opacity,1))}.border-red-600{--tw-border-opacity: 1;border-color: rgb(220 38 38/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity: 1;border-color: rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-500{--tw-border-opacity: 1;border-color: rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-500\/40{border-color: rgba(40, 115, 79, .4)}.border-slate-600\/70{border-color: rgba(21, 93, 67, .7)}.border-slate-800{--tw-border-opacity: 1;border-color: rgb(30 41 59/var(--tw-border-opacity,1))}.border-stone-200{--tw-border-opacity: 1;border-color: rgb(231 229 228/var(--tw-border-opacity,1))}.border-teal-100{--tw-border-opacity: 1;border-color: rgb(204 251 241/var(--tw-border-opacity,1))}.border-teal-200{--tw-border-opacity: 1;border-color: rgb(153 246 228/var(--tw-border-opacity,1))}.border-teal-400{--tw-border-opacity: 1;border-color: rgb(45 212 191/var(--tw-border-opacity,1))}.border-teal-700{--tw-border-opacity: 1;border-color: rgb(15 118 110/var(--tw-border-opacity,1))}.border-transparent{border-color: transparent}.border-white{--tw-border-opacity: 1;border-color: rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color: hsla(0,0%,100%,.1)}.border-white\/15{border-color: hsla(0,0%,100%,.15)}.border-white\/20{border-color: hsla(0,0%,100%,.2)}.border-white\/25{border-color: hsla(0,0%,100%,.25)}.border-white\/30{border-color: hsla(0,0%,100%,.3)}.border-white\/35{border-color: hsla(0,0%,100%,.35)}.border-white\/40{border-color: hsla(0,0%,100%,.4)}.border-white\/70{border-color: hsla(0,0%,100%,.7)}.border-white\/80{border-color: hsla(0,0%,100%,.8)}.\!bg-\[\#edf5f3\]{--tw-bg-opacity: 1!important;background-color: rgb(237 245 243/var(--tw-bg-opacity,1))!important}.\!bg-\[\#f2f4ee\]{--tw-bg-opacity: 1!important;background-color: rgb(242 244 238/var(--tw-bg-opacity,1))!important}.\!bg-\[\#f4f8fb\]{--tw-bg-opacity: 1!important;background-color: rgb(244 248 251/var(--tw-bg-opacity,1))!important}.\!bg-\[\#f7faf5\]{--tw-bg-opacity: 1!important;background-color: rgb(247 250 245/var(--tw-bg-opacity,1))!important}.\!bg-\[\#fbf7ef\]{--tw-bg-opacity: 1!important;background-color: rgb(251 247 239/var(--tw-bg-opacity,1))!important}.\!bg-\[\#fbf7f1\]{--tw-bg-opacity: 1!important;background-color: rgb(251 247 241/var(--tw-bg-opacity,1))!important}.\!bg-\[\#fff7ec\]{--tw-bg-opacity: 1!important;background-color: rgb(255 247 236/var(--tw-bg-opacity,1))!important}.\!bg-\[\#fff8f5\]{--tw-bg-opacity: 1!important;background-color: rgb(255 248 245/var(--tw-bg-opacity,1))!important}.\!bg-white{--tw-bg-opacity: 1!important;background-color: rgb(255 255 255/var(--tw-bg-opacity,1))!important}.\!bg-white\/10{background-color: hsla(0,0%,100%,.1)!important}.bg-\[\#071923\]{--tw-bg-opacity: 1;background-color: rgb(7 25 35/var(--tw-bg-opacity,1))}.bg-\[\#0d9488\]{--tw-bg-opacity: 1;background-color: rgb(13 148 136/var(--tw-bg-opacity,1))}.bg-\[\#101b22\]{--tw-bg-opacity: 1;background-color: rgb(16 27 34/var(--tw-bg-opacity,1))}.bg-\[\#101f22\]{--tw-bg-opacity: 1;background-color: rgb(16 31 34/var(--tw-bg-opacity,1))}.bg-\[\#102427\]{--tw-bg-opacity: 1;background-color: rgb(16 36 39/var(--tw-bg-opacity,1))}.bg-\[\#102a31\]{--tw-bg-opacity: 1;background-color: rgb(16 42 49/var(--tw-bg-opacity,1))}.bg-\[\#111827\]{--tw-bg-opacity: 1;background-color: rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-\[\#130c0a\]{--tw-bg-opacity: 1;background-color: rgb(19 12 10/var(--tw-bg-opacity,1))}.bg-\[\#152622\]{--tw-bg-opacity: 1;background-color: rgb(21 38 34/var(--tw-bg-opacity,1))}.bg-\[\#172426\]{--tw-bg-opacity: 1;background-color: rgb(23 36 38/var(--tw-bg-opacity,1))}.bg-\[\#172620\]{--tw-bg-opacity: 1;background-color: rgb(23 38 32/var(--tw-bg-opacity,1))}.bg-\[\#18252d\]{--tw-bg-opacity: 1;background-color: rgb(24 37 45/var(--tw-bg-opacity,1))}.bg-\[\#192421\]{--tw-bg-opacity: 1;background-color: rgb(25 36 33/var(--tw-bg-opacity,1))}.bg-\[\#1a1210\]{--tw-bg-opacity: 1;background-color: rgb(26 18 16/var(--tw-bg-opacity,1))}.bg-\[\#1c211d\]{--tw-bg-opacity: 1;background-color: rgb(28 33 29/var(--tw-bg-opacity,1))}.bg-\[\#1f2b28\]{--tw-bg-opacity: 1;background-color: rgb(31 43 40/var(--tw-bg-opacity,1))}.bg-\[\#23342f\]{--tw-bg-opacity: 1;background-color: rgb(35 52 47/var(--tw-bg-opacity,1))}.bg-\[\#251515\]{--tw-bg-opacity: 1;background-color: rgb(37 21 21/var(--tw-bg-opacity,1))}.bg-\[\#27372f\]{--tw-bg-opacity: 1;background-color: rgb(39 55 47/var(--tw-bg-opacity,1))}.bg-\[\#2b150f\]{--tw-bg-opacity: 1;background-color: rgb(43 21 15/var(--tw-bg-opacity,1))}.bg-\[\#2b1712\]{--tw-bg-opacity: 1;background-color: rgb(43 23 18/var(--tw-bg-opacity,1))}.bg-\[\#2c1a20\]{--tw-bg-opacity: 1;background-color: rgb(44 26 32/var(--tw-bg-opacity,1))}.bg-\[\#3f6e62\]{--tw-bg-opacity: 1;background-color: rgb(63 110 98/var(--tw-bg-opacity,1))}.bg-\[\#7cad8f\]{--tw-bg-opacity: 1;background-color: rgb(124 173 143/var(--tw-bg-opacity,1))}.bg-\[\#b94550\]{--tw-bg-opacity: 1;background-color: rgb(185 69 80/var(--tw-bg-opacity,1))}.bg-\[\#cfe3bd\]{--tw-bg-opacity: 1;background-color: rgb(207 227 189/var(--tw-bg-opacity,1))}.bg-\[\#d94f54\]{--tw-bg-opacity: 1;background-color: rgb(217 79 84/var(--tw-bg-opacity,1))}.bg-\[\#e75f63\]{--tw-bg-opacity: 1;background-color: rgb(231 95 99/var(--tw-bg-opacity,1))}.bg-\[\#e8f0e4\]{--tw-bg-opacity: 1;background-color: rgb(232 240 228/var(--tw-bg-opacity,1))}.bg-\[\#e8f0e7\]{--tw-bg-opacity: 1;background-color: rgb(232 240 231/var(--tw-bg-opacity,1))}.bg-\[\#e8f7f5\]{--tw-bg-opacity: 1;background-color: rgb(232 247 245/var(--tw-bg-opacity,1))}.bg-\[\#e9f1ee\]{--tw-bg-opacity: 1;background-color: rgb(233 241 238/var(--tw-bg-opacity,1))}.bg-\[\#edf3ee\]{--tw-bg-opacity: 1;background-color: rgb(237 243 238/var(--tw-bg-opacity,1))}.bg-\[\#edf5f3\]{--tw-bg-opacity: 1;background-color: rgb(237 245 243/var(--tw-bg-opacity,1))}.bg-\[\#eef1f5\]{--tw-bg-opacity: 1;background-color: rgb(238 241 245/var(--tw-bg-opacity,1))}.bg-\[\#eef2e7\]{--tw-bg-opacity: 1;background-color: rgb(238 242 231/var(--tw-bg-opacity,1))}.bg-\[\#eef4fb\]{--tw-bg-opacity: 1;background-color: rgb(238 244 251/var(--tw-bg-opacity,1))}.bg-\[\#eef5ea\]{--tw-bg-opacity: 1;background-color: rgb(238 245 234/var(--tw-bg-opacity,1))}.bg-\[\#eef5f4\]{--tw-bg-opacity: 1;background-color: rgb(238 245 244/var(--tw-bg-opacity,1))}.bg-\[\#f0f3ee\]{--tw-bg-opacity: 1;background-color: rgb(240 243 238/var(--tw-bg-opacity,1))}.bg-\[\#f0fdf4\]{--tw-bg-opacity: 1;background-color: rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-\[\#f0fdfa\]{--tw-bg-opacity: 1;background-color: rgb(240 253 250/var(--tw-bg-opacity,1))}.bg-\[\#f1c77e\]\/20{background-color: hsla(38,80%,72%,.2)}.bg-\[\#f1eadf\]{--tw-bg-opacity: 1;background-color: rgb(241 234 223/var(--tw-bg-opacity,1))}.bg-\[\#f2f4ee\]{--tw-bg-opacity: 1;background-color: rgb(242 244 238/var(--tw-bg-opacity,1))}.bg-\[\#f3d59b\]{--tw-bg-opacity: 1;background-color: rgb(243 213 155/var(--tw-bg-opacity,1))}.bg-\[\#f4f7f4\]{--tw-bg-opacity: 1;background-color: rgb(244 247 244/var(--tw-bg-opacity,1))}.bg-\[\#f4f8fb\]{--tw-bg-opacity: 1;background-color: rgb(244 248 251/var(--tw-bg-opacity,1))}.bg-\[\#f5d99b\]{--tw-bg-opacity: 1;background-color: rgb(245 217 155/var(--tw-bg-opacity,1))}.bg-\[\#f5f3ff\]{--tw-bg-opacity: 1;background-color: rgb(245 243 255/var(--tw-bg-opacity,1))}.bg-\[\#f5f8fc\]{--tw-bg-opacity: 1;background-color: rgb(245 248 252/var(--tw-bg-opacity,1))}.bg-\[\#f5fbfa\]{--tw-bg-opacity: 1;background-color: rgb(245 251 250/var(--tw-bg-opacity,1))}.bg-\[\#f6efe8\]{--tw-bg-opacity: 1;background-color: rgb(246 239 232/var(--tw-bg-opacity,1))}.bg-\[\#f6f7f8\]{--tw-bg-opacity: 1;background-color: rgb(246 247 248/var(--tw-bg-opacity,1))}.bg-\[\#f7c9b8\]{--tw-bg-opacity: 1;background-color: rgb(247 201 184/var(--tw-bg-opacity,1))}.bg-\[\#f7f1e4\]{--tw-bg-opacity: 1;background-color: rgb(247 241 228/var(--tw-bg-opacity,1))}.bg-\[\#f7f2e8\]{--tw-bg-opacity: 1;background-color: rgb(247 242 232/var(--tw-bg-opacity,1))}.bg-\[\#f7faf5\]{--tw-bg-opacity: 1;background-color: rgb(247 250 245/var(--tw-bg-opacity,1))}.bg-\[\#f7faf9\]{--tw-bg-opacity: 1;background-color: rgb(247 250 249/var(--tw-bg-opacity,1))}.bg-\[\#f7fbfa\]{--tw-bg-opacity: 1;background-color: rgb(247 251 250/var(--tw-bg-opacity,1))}.bg-\[\#f8efe8\]{--tw-bg-opacity: 1;background-color: rgb(248 239 232/var(--tw-bg-opacity,1))}.bg-\[\#f8f4ee\]{--tw-bg-opacity: 1;background-color: rgb(248 244 238/var(--tw-bg-opacity,1))}.bg-\[\#f8fafc\]{--tw-bg-opacity: 1;background-color: rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-\[\#fae7e2\]{--tw-bg-opacity: 1;background-color: rgb(250 231 226/var(--tw-bg-opacity,1))}.bg-\[\#faf9f6\]{--tw-bg-opacity: 1;background-color: rgb(250 249 246/var(--tw-bg-opacity,1))}.bg-\[\#fbf7ef\]{--tw-bg-opacity: 1;background-color: rgb(251 247 239/var(--tw-bg-opacity,1))}.bg-\[\#fbf7f1\]{--tw-bg-opacity: 1;background-color: rgb(251 247 241/var(--tw-bg-opacity,1))}.bg-\[\#fbfaf6\]{--tw-bg-opacity: 1;background-color: rgb(251 250 246/var(--tw-bg-opacity,1))}.bg-\[\#ff5a5f\]{--tw-bg-opacity: 1;background-color: rgb(255 90 95/var(--tw-bg-opacity,1))}.bg-\[\#ffb199\]\/20{background-color: rgba(213, 226, 207, .2)}.bg-\[\#ffb199\]\/25{background-color: rgba(213, 226, 207, .25)}.bg-\[\#ffc0aa\]{--tw-bg-opacity: 1;background-color: rgb(255 192 170/var(--tw-bg-opacity,1))}.bg-\[\#ffd8c8\]{--tw-bg-opacity: 1;background-color: rgb(255 216 200/var(--tw-bg-opacity,1))}.bg-\[\#ffe3da\]{--tw-bg-opacity: 1;background-color: rgb(255 227 218/var(--tw-bg-opacity,1))}.bg-\[\#ffe8df\]{--tw-bg-opacity: 1;background-color: rgb(255 232 223/var(--tw-bg-opacity,1))}.bg-\[\#ffe9e2\]{--tw-bg-opacity: 1;background-color: rgb(255 233 226/var(--tw-bg-opacity,1))}.bg-\[\#fff0ea\]{--tw-bg-opacity: 1;background-color: rgb(255 240 234/var(--tw-bg-opacity,1))}.bg-\[\#fff0ef\]{--tw-bg-opacity: 1;background-color: rgb(255 240 239/var(--tw-bg-opacity,1))}.bg-\[\#fff7ec\]{--tw-bg-opacity: 1;background-color: rgb(255 247 236/var(--tw-bg-opacity,1))}.bg-\[\#fff7ed\]{--tw-bg-opacity: 1;background-color: rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-\[\#fff7f6\]{--tw-bg-opacity: 1;background-color: rgb(255 247 246/var(--tw-bg-opacity,1))}.bg-\[\#fff8f5\]{--tw-bg-opacity: 1;background-color: rgb(255 248 245/var(--tw-bg-opacity,1))}.bg-\[\#fff9f4\]{--tw-bg-opacity: 1;background-color: rgb(255 249 244/var(--tw-bg-opacity,1))}.bg-\[\#fffaf8\]{--tw-bg-opacity: 1;background-color: rgb(255 250 248/var(--tw-bg-opacity,1))}.bg-amber-100{--tw-bg-opacity: 1;background-color: rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-200\/50{background-color: hsla(48,97%,77%,.5)}.bg-amber-300{--tw-bg-opacity: 1;background-color: rgb(252 211 77/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity: 1;background-color: rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity: 1;background-color: rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity: 1;background-color: rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/10{background-color: rgba(0,0,0,.1)}.bg-black\/80{background-color: rgba(0,0,0,.8)}.bg-black\/90{background-color: rgba(0,0,0,.9)}.bg-blue-300{--tw-bg-opacity: 1;background-color: rgb(147 197 253/var(--tw-bg-opacity,1))}.bg-blue-400{--tw-bg-opacity: 1;background-color: rgb(96 165 250/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity: 1;background-color: rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-50\/70{background-color: rgba(246, 245, 239, .7)}.bg-blue-500\/15{background-color: rgba(40, 115, 79, .15)}.bg-blue-600{--tw-bg-opacity: 1;background-color: rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-cyan-100{--tw-bg-opacity: 1;background-color: rgb(207 250 254/var(--tw-bg-opacity,1))}.bg-cyan-300{--tw-bg-opacity: 1;background-color: rgb(103 232 249/var(--tw-bg-opacity,1))}.bg-cyan-300\/10{background-color: rgba(184, 202, 75, .1)}.bg-cyan-50{--tw-bg-opacity: 1;background-color: rgb(236 254 255/var(--tw-bg-opacity,1))}.bg-cyan-50\/70{background-color: rgba(246, 245, 239, .7)}.bg-cyan-500\/15{background-color: rgba(40, 115, 79, .15)}.bg-emerald-300{--tw-bg-opacity: 1;background-color: rgb(110 231 183/var(--tw-bg-opacity,1))}.bg-emerald-400\/10{background-color: rgba(40, 115, 79, .1)}.bg-gray-100{--tw-bg-opacity: 1;background-color: rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity: 1;background-color: rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity: 1;background-color: rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-indigo-950{--tw-bg-opacity: 1;background-color: rgb(30 27 75/var(--tw-bg-opacity,1))}.bg-indigo-950\/70{background-color: rgba(21, 93, 67, .7)}.bg-orange-100{--tw-bg-opacity: 1;background-color: rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-200{--tw-bg-opacity: 1;background-color: rgb(254 215 170/var(--tw-bg-opacity,1))}.bg-orange-300\/20{background-color: hsla(31,97%,72%,.2)}.bg-orange-50{--tw-bg-opacity: 1;background-color: rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-500{--tw-bg-opacity: 1;background-color: rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-orange-600{--tw-bg-opacity: 1;background-color: rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity: 1;background-color: rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-50\/70{background-color: rgba(246, 245, 239, .7)}.bg-purple-500\/15{background-color: rgba(184, 202, 75, .15)}.bg-red-100{--tw-bg-opacity: 1;background-color: rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-100\/70{background-color: hsla(0,93%,94%,.7)}.bg-red-400{--tw-bg-opacity: 1;background-color: rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity: 1;background-color: rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity: 1;background-color: rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-500\/15{background-color: rgba(184, 202, 75, .15)}.bg-red-600{--tw-bg-opacity: 1;background-color: rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-rose-100{--tw-bg-opacity: 1;background-color: rgb(255 228 230/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity: 1;background-color: rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity: 1;background-color: rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity: 1;background-color: rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-50\/80{background-color: rgba(248,250,252,.8)}.bg-slate-700{--tw-bg-opacity: 1;background-color: rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity: 1;background-color: rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-800\/40{background-color: rgba(9, 62, 45, .4)}.bg-slate-800\/60{background-color: rgba(9, 62, 45, .6)}.bg-slate-800\/75{background-color: rgba(9, 62, 45, .75)}.bg-slate-800\/80{background-color: rgba(9, 62, 45, .8)}.bg-slate-800\/90{background-color: rgba(9, 62, 45, .9)}.bg-slate-900{--tw-bg-opacity: 1;background-color: rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-900\/50{background-color: rgba(9, 62, 45, .5)}.bg-slate-950{--tw-bg-opacity: 1;background-color: rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-slate-950\/30{background-color: rgba(9, 62, 45, .3)}.bg-slate-950\/35{background-color: rgba(9, 62, 45, .35)}.bg-slate-950\/40{background-color: rgba(9, 62, 45, .4)}.bg-slate-950\/50{background-color: rgba(9, 62, 45, .5)}.bg-slate-950\/55{background-color: rgba(9, 62, 45, .55)}.bg-slate-950\/60{background-color: rgba(9, 62, 45, .6)}.bg-slate-950\/75{background-color: rgba(9, 62, 45, .75)}.bg-slate-950\/80{background-color: rgba(9, 62, 45, .8)}.bg-stone-200{--tw-bg-opacity: 1;background-color: rgb(231 229 228/var(--tw-bg-opacity,1))}.bg-stone-50{--tw-bg-opacity: 1;background-color: rgb(250 250 249/var(--tw-bg-opacity,1))}.bg-stone-800{--tw-bg-opacity: 1;background-color: rgb(41 37 36/var(--tw-bg-opacity,1))}.bg-stone-900{--tw-bg-opacity: 1;background-color: rgb(28 25 23/var(--tw-bg-opacity,1))}.bg-teal-100{--tw-bg-opacity: 1;background-color: rgb(204 251 241/var(--tw-bg-opacity,1))}.bg-teal-200{--tw-bg-opacity: 1;background-color: rgb(153 246 228/var(--tw-bg-opacity,1))}.bg-teal-50{--tw-bg-opacity: 1;background-color: rgb(240 253 250/var(--tw-bg-opacity,1))}.bg-teal-500{--tw-bg-opacity: 1;background-color: rgb(20 184 166/var(--tw-bg-opacity,1))}.bg-teal-600{--tw-bg-opacity: 1;background-color: rgb(13 148 136/var(--tw-bg-opacity,1))}.bg-teal-700{--tw-bg-opacity: 1;background-color: rgb(15 118 110/var(--tw-bg-opacity,1))}.bg-transparent{background-color: transparent}.bg-white{--tw-bg-opacity: 1;background-color: rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color: hsla(0,0%,100%,.1)}.bg-white\/40{background-color: hsla(0,0%,100%,.4)}.bg-white\/5{background-color: hsla(0,0%,100%,.05)}.bg-white\/70{background-color: hsla(0,0%,100%,.7)}.bg-white\/80{background-color: hsla(0,0%,100%,.8)}.bg-white\/90{background-color: hsla(0,0%,100%,.9)}.bg-white\/95{background-color: hsla(0,0%,100%,.95)}.bg-white\/\[0\.03\]{background-color: hsla(0,0%,100%,.03)}.bg-white\/\[0\.04\]{background-color: hsla(0,0%,100%,.04)}.bg-white\/\[0\.06\]{background-color: hsla(0,0%,100%,.06)}.\!bg-\[linear-gradient\(135deg\2c \#10b6a5\2c \#0f766e\)\]{background-image: linear-gradient(135deg,#28734f,#155d43)!important}.\!bg-\[linear-gradient\(135deg\2c \#5b7f62\2c \#d97956\)\]{background-image: linear-gradient(135deg,#28734f,#e77935)!important}.\!bg-\[linear-gradient\(135deg\2c \#6f8f65\2c \#3f6e62\)\]{background-image: linear-gradient(135deg,#28734f,#155d43)!important}.\!bg-\[linear-gradient\(135deg\2c \#d85d61\2c \#b94550\)\]{background-image: linear-gradient(135deg,#b8ca4b,#28734f)!important}.\!bg-\[linear-gradient\(135deg\2c \#e75f63\2c \#d64f54\)\]{background-image: linear-gradient(135deg,#b8ca4b,#28734f)!important}.\!bg-\[linear-gradient\(135deg\2c \#f97316\2c \#dc2626\)\]{background-image: linear-gradient(135deg,#e77935,#28734f)!important}.bg-\[linear-gradient\(100deg\2c rgba\(13\2c 30\2c 24\2c \.96\)\2c rgba\(24\2c 48\2c 40\2c \.86\)_46\%\2c rgba\(25\2c 36\2c 33\2c \.44\)\)\2c radial-gradient\(circle_at_78\%_22\%\2c rgba\(117\2c 162\2c 132\2c \.44\)\2c transparent_30\%\)\]{background-image: linear-gradient(100deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .86) 46%,rgba(9, 62, 45, .44)),radial-gradient(circle at 78% 22%,rgba(40, 115, 79, .44),transparent 30%)}.bg-\[linear-gradient\(100deg\2c rgba\(28\2c 33\2c 29\2c \.96\)\2c rgba\(38\2c 55\2c 50\2c \.9\)_48\%\2c rgba\(38\2c 55\2c 50\2c \.28\)_100\%\)\]{background-image: linear-gradient(100deg,rgba(28,33,29,.96),rgba(9, 62, 45, .9) 48%,rgba(9, 62, 45, .28))}.bg-\[linear-gradient\(102deg\2c rgba\(11\2c 21\2c 29\2c \.96\)\2c rgba\(16\2c 40\2c 48\2c \.88\)_46\%\2c rgba\(16\2c 40\2c 48\2c \.26\)_100\%\)\]{background-image: linear-gradient(102deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .88) 46%,rgba(9, 62, 45, .26))}.bg-\[linear-gradient\(105deg\2c rgba\(14\2c 30\2c 27\2c \.96\)\2c rgba\(28\2c 47\2c 41\2c \.84\)_48\%\2c rgba\(21\2c 38\2c 34\2c \.34\)\)\2c radial-gradient\(circle_at_20\%_18\%\2c rgba\(224\2c 183\2c 123\2c \.46\)\2c transparent_28\%\)\]{background-image: linear-gradient(105deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .84) 48%,rgba(9, 62, 45, .34)),radial-gradient(circle at 20% 18%,hsla(36,62%,68%,.46),transparent 28%)}.bg-\[linear-gradient\(135deg\2c _\#8e2f20\2c _\#bb5930_52\%\2c _\#d78b47\)\]{background-image: linear-gradient(135deg,#155d43,#e77935 52%,#e77935)}.bg-\[linear-gradient\(135deg\2c rgba\(255\2c 255\2c 255\2c 0\.86\)_0\%\2c rgba\(250\2c 250\2c 249\2c 0\.78\)_44\%\2c rgba\(254\2c 242\2c 242\2c 0\.72\)_100\%\)\]{background-image: linear-gradient(135deg,hsla(0,0%,100%,.86),hsla(60,9%,98%,.78) 44%,hsla(0,86%,97%,.72))}.bg-\[linear-gradient\(90deg\2c rgba\(13\2c 29\2c 36\2c 0\.92\)\2c rgba\(13\2c 29\2c 36\2c 0\.70\)_38\%\2c rgba\(13\2c 29\2c 36\2c 0\.16\)_78\%\)\]{background-image: linear-gradient(90deg,rgba(9, 62, 45, .92),rgba(9, 62, 45, .7) 38%,rgba(9, 62, 45, .16) 78%)}.bg-\[linear-gradient\(90deg\2c rgba\(15\2c 31\2c 33\2c 0\.94\)\2c rgba\(15\2c 31\2c 33\2c 0\.72\)_43\%\2c rgba\(15\2c 31\2c 33\2c 0\.18\)_82\%\)\]{background-image: linear-gradient(90deg,rgba(9, 62, 45, .94),rgba(9, 62, 45, .72) 43%,rgba(9, 62, 45, .18) 82%)}.bg-\[linear-gradient\(90deg\2c rgba\(17\2c 24\2c 39\2c 0\.96\)\2c rgba\(17\2c 24\2c 39\2c 0\.78\)_42\%\2c rgba\(17\2c 24\2c 39\2c 0\.20\)_82\%\)\]{background-image: linear-gradient(90deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .78) 42%,rgba(9, 62, 45, .2) 82%)}.bg-\[linear-gradient\(90deg\2c rgba\(254\2c 242\2c 242\2c 0\.65\)\2c transparent\)\]{background-image: linear-gradient(90deg,hsla(0,86%,97%,.65),transparent)}.bg-\[linear-gradient\(90deg\2c rgba\(8\2c 31\2c 35\2c 0\.94\)\2c rgba\(8\2c 31\2c 35\2c 0\.74\)_42\%\2c rgba\(8\2c 31\2c 35\2c 0\.10\)_82\%\)\]{background-image: linear-gradient(90deg,rgba(9, 62, 45, .94),rgba(9, 62, 45, .74) 42%,rgba(9, 62, 45, .1) 82%)}.bg-\[linear-gradient\(rgba\(125\2c 211\2c 252\2c \.07\)_1px\2c transparent_1px\)\2c linear-gradient\(90deg\2c rgba\(125\2c 211\2c 252\2c \.07\)_1px\2c transparent_1px\)\]{background-image: linear-gradient(rgba(213, 226, 207, .07) 1px,transparent 0),linear-gradient(90deg,rgba(213, 226, 207, .07) 1px,transparent 0)}.bg-\[radial-gradient\(circle_at_12\%_18\%\2c rgba\(254\2c 202\2c 202\2c 0\.42\)\2c transparent_32\%\)\2c radial-gradient\(circle_at_82\%_72\%\2c rgba\(255\2c 228\2c 230\2c 0\.58\)\2c transparent_30\%\)\]{background-image: radial-gradient(circle at 12% 18%,hsla(0,96%,89%,.42),transparent 32%),radial-gradient(circle at 82% 72%,rgba(246, 245, 239, .58),transparent 30%)}.bg-\[radial-gradient\(circle_at_12\%_18\%\2c rgba\(45\2c 212\2c 191\2c \.38\)\2c transparent_30\%\)\2c linear-gradient\(105deg\2c rgba\(5\2c 19\2c 30\2c \.96\)\2c rgba\(9\2c 31\2c 45\2c \.88\)_56\%\2c rgba\(15\2c 68\2c 84\2c \.58\)\)\]{background-image: radial-gradient(circle at 12% 18%,rgba(40, 115, 79, .38),transparent 30%),linear-gradient(105deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .88) 56%,rgba(21, 93, 67, .58))}.bg-\[radial-gradient\(circle_at_12\%_20\%\2c rgba\(255\2c 183\2c 158\2c \.44\)\2c transparent_28\%\)\2c linear-gradient\(105deg\2c rgba\(28\2c 18\2c 22\2c \.96\)\2c rgba\(61\2c 25\2c 32\2c \.86\)_52\%\2c rgba\(25\2c 22\2c 35\2c \.54\)\)\]{background-image: radial-gradient(circle at 12% 20%,rgba(213, 226, 207, .44),transparent 28%),linear-gradient(105deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .86) 52%,rgba(9, 62, 45, .54))}.bg-\[radial-gradient\(circle_at_14\%_16\%\2c rgba\(251\2c 191\2c 36\2c 0\.22\)\2c transparent_28\%\)\2c radial-gradient\(circle_at_82\%_20\%\2c rgba\(255\2c 255\2c 255\2c 0\.08\)\2c transparent_24\%\)\2c linear-gradient\(115deg\2c rgba\(19\2c 12\2c 10\2c 0\.96\)\2c rgba\(48\2c 25\2c 20\2c 0\.88\)_48\%\2c rgba\(19\2c 12\2c 10\2c 0\.94\)\)\]{background-image: radial-gradient(circle at 14% 16%,rgba(231, 121, 53, .22),transparent 28%),radial-gradient(circle at 82% 20%,hsla(0,0%,100%,.08),transparent 24%),linear-gradient(115deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .88) 48%,rgba(9, 62, 45, .94))}.bg-\[radial-gradient\(circle_at_16\%_18\%\2c rgba\(251\2c 191\2c 36\2c \.36\)\2c transparent_30\%\)\2c linear-gradient\(105deg\2c rgba\(38\2c 18\2c 10\2c \.98\)\2c rgba\(90\2c 31\2c 18\2c \.9\)_52\%\2c rgba\(30\2c 22\2c 14\2c \.58\)\)\]{background-image: radial-gradient(circle at 16% 18%,rgba(231, 121, 53, .36),transparent 30%),linear-gradient(105deg,rgba(9, 62, 45, .98),rgba(21, 93, 67, .9) 52%,rgba(9, 62, 45, .58))}.bg-\[radial-gradient\(circle_at_18\%_18\%\2c rgba\(236\2c 196\2c 120\2c \.4\)\2c transparent_28\%\)\2c radial-gradient\(circle_at_86\%_18\%\2c rgba\(119\2c 183\2c 154\2c \.36\)\2c transparent_30\%\)\2c linear-gradient\(130deg\2c \#172621\2c \#263c35_54\%\2c \#68503b\)\]{background-image: radial-gradient(circle at 18% 18%,hsla(39,75%,70%,.4),transparent 28%),radial-gradient(circle at 86% 18%,rgba(40, 115, 79, .36),transparent 30%),linear-gradient(130deg,#093e2d,#155d43 54%,#155d43)}.bg-\[radial-gradient\(circle_at_50\%_45\%\2c rgba\(14\2c 165\2c 233\2c \.20\)\2c transparent_32\%\)\2c radial-gradient\(circle_at_48\%_45\%\2c rgba\(245\2c 158\2c 11\2c \.18\)\2c transparent_24\%\)\]{background-image: radial-gradient(circle at 50% 45%,rgba(40, 115, 79, .2),transparent 32%),radial-gradient(circle at 48% 45%,rgba(231, 121, 53, .18),transparent 24%)}.bg-\[radial-gradient\(circle_at_center\2c transparent_0\2c rgba\(2\2c 6\2c 23\2c \.45\)_48\%\2c rgba\(2\2c 6\2c 23\2c \.96\)_82\%\)\]{background-image: radial-gradient(circle at center,transparent 0,rgba(9, 62, 45, .45) 48%,rgba(9, 62, 45, .96) 82%)}.bg-\[radial-gradient\(circle_at_top\2c rgba\(239\2c 68\2c 68\2c 0\.15\)\2c transparent_28\%\)\2c radial-gradient\(circle_at_15\%_75\%\2c rgba\(148\2c 163\2c 184\2c 0\.2\)\2c transparent_20\%\)\2c radial-gradient\(circle_at_90\%_20\%\2c rgba\(255\2c 255\2c 255\2c 0\.08\)\2c transparent_22\%\)\]{background-image: radial-gradient(circle at top,rgba(184, 202, 75, .15),transparent 28%),radial-gradient(circle at 15% 75%,rgba(184, 202, 75, .2),transparent 20%),radial-gradient(circle at 90% 20%,hsla(0,0%,100%,.08),transparent 22%)}.bg-\[radial-gradient\(circle_at_top\2c rgba\(239\2c 68\2c 68\2c 0\.18\)\2c transparent_32\%\)\2c radial-gradient\(circle_at_bottom_right\2c rgba\(59\2c 130\2c 246\2c 0\.16\)\2c transparent_30\%\)\]{background-image: radial-gradient(circle at top,rgba(184, 202, 75, .18),transparent 32%),radial-gradient(circle at bottom right,rgba(40, 115, 79, .16),transparent 30%)}.bg-\[radial-gradient\(ellipse_at_top\2c rgba\(254\2c 202\2c 202\2c 0\.55\)\2c rgba\(255\2c 255\2c 255\2c 0\)_68\%\)\]{background-image: radial-gradient(ellipse at top,hsla(0,96%,89%,.55),hsla(0,0%,100%,0) 68%)}.bg-gradient-to-b{background-image: linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image: linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image: linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image: linear-gradient(to top,var(--tw-gradient-stops))}.from-\[\#101b22\]{--tw-gradient-from: #093e2d var(--tw-gradient-from-position);--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#1c211d\]{--tw-gradient-from: #1c211d var(--tw-gradient-from-position);--tw-gradient-to: rgba(28,33,29,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#f6efe8\]{--tw-gradient-from: #edf2e8 var(--tw-gradient-from-position);--tw-gradient-to: hsla(30,44%,94%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-100{--tw-gradient-from: #edf2e8 var(--tw-gradient-from-position);--tw-gradient-to: hsla(48,96%,89%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-400{--tw-gradient-from: #b8ca4b var(--tw-gradient-from-position);--tw-gradient-to: rgba(184, 202, 75, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #28734f var(--tw-gradient-from-position);--tw-gradient-to: rgba(40, 115, 79, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #28734f var(--tw-gradient-from-position);--tw-gradient-to: rgba(40, 115, 79, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from: #28734f var(--tw-gradient-from-position);--tw-gradient-to: rgba(40, 115, 79, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-950{--tw-gradient-from: #093e2d var(--tw-gradient-from-position);--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-50{--tw-gradient-from: #f6f5ef var(--tw-gradient-from-position);--tw-gradient-to: rgba(246, 245, 239, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #b8ca4b var(--tw-gradient-from-position);--tw-gradient-to: rgba(184, 202, 75, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-50{--tw-gradient-from: #f6f5ef var(--tw-gradient-from-position);--tw-gradient-to: hsla(0,86%,97%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #b8ca4b var(--tw-gradient-from-position);--tw-gradient-to: rgba(184, 202, 75, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-600{--tw-gradient-from: #28734f var(--tw-gradient-from-position);--tw-gradient-to: rgba(40, 115, 79, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-rose-50{--tw-gradient-from: #f6f5ef var(--tw-gradient-from-position);--tw-gradient-to: rgba(246, 245, 239, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from: #093e2d var(--tw-gradient-from-position);--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900\/80{--tw-gradient-from: rgba(9, 62, 45, .8) var(--tw-gradient-from-position);--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-stone-50{--tw-gradient-from: #fafaf9 var(--tw-gradient-from-position);--tw-gradient-to: hsla(60,9%,98%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-stone-950{--tw-gradient-from: #0c0a09 var(--tw-gradient-from-position);--tw-gradient-to: rgba(12,10,9,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: transparent var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to)}.via-\[\#fff9f3\]{--tw-gradient-to: rgba(246, 245, 239, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),#f6f5ef var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-400\/60{--tw-gradient-to: rgba(184, 202, 75, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),rgba(184, 202, 75, .6) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-gray-900\/70{--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),rgba(9, 62, 45, .7) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-800{--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),#093e2d var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-900\/20{--tw-gradient-to: rgba(9, 62, 45, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),rgba(9, 62, 45, .2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-stone-900{--tw-gradient-to: rgba(28,25,23,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),#1c1917 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white{--tw-gradient-to: hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-yellow-50{--tw-gradient-to: hsla(55,92%,95%,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from),#f6f5ef var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-\[\#f8ede3\]{--tw-gradient-to: #edf2e8 var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to: #28734f var(--tw-gradient-to-position)}.to-fuchsia-400{--tw-gradient-to: #b8ca4b var(--tw-gradient-to-position)}.to-gray-50{--tw-gradient-to: #f9fafb var(--tw-gradient-to-position)}.to-gray-900\/10{--tw-gradient-to: rgba(9, 62, 45, .1) var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to: #f6f5ef var(--tw-gradient-to-position)}.to-purple-400{--tw-gradient-to: #d5e2cf var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #b8ca4b var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #28734f var(--tw-gradient-to-position)}.to-red-50{--tw-gradient-to: #f6f5ef var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to: #b8ca4b var(--tw-gradient-to-position)}.to-slate-50{--tw-gradient-to: #f8fafc var(--tw-gradient-to-position)}.to-slate-900{--tw-gradient-to: #093e2d var(--tw-gradient-to-position)}.to-stone-800{--tw-gradient-to: #292524 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.bg-\[size\:36px_36px\]{background-size: 36px 36px}.bg-cover{background-size: cover}.bg-clip-text{-webkit-background-clip:text;background-clip: text}.bg-center{background-position: 50%}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-top{-o-object-position:top;object-position:top}.p-1{padding:.25rem}.p-10{padding:2.5rem}.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-8{padding-left:2rem!important;padding-right:2rem!important}.px-1{padding-left:.25rem;padding-right:.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-12{padding-left:3rem;padding-right:3rem}.px-2{padding-left:.5rem;padding-right:.5rem}.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}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.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-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-28{padding-bottom:7rem}.pb-3{padding-bottom:.75rem}.pb-32{padding-bottom:8rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-8{padding-bottom:2rem}.pl-1{padding-left:.25rem}.pl-12{padding-left:3rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pt-0{padding-top:0}.pt-10{padding-top:2.5rem}.pt-16{padding-top:4rem}.pt-20{padding-top:5rem}.pt-24{padding-top:6rem}.pt-28{padding-top:7rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-7{padding-top:1.75rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.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-6xl{font-size:3.75rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.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-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-9{line-height:2.25rem}.leading-loose{line-height:2}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-\[0\.26em\]{letter-spacing:.26em}.tracking-\[0\.28em\]{letter-spacing:.28em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.\!text-\[\#5b7f62\]{--tw-text-opacity: 1!important;color: rgb(91 127 98/var(--tw-text-opacity,1))!important}.\!text-white{--tw-text-opacity: 1!important;color: rgb(255 255 255/var(--tw-text-opacity,1))!important}.text-\[\#071923\]{--tw-text-opacity: 1;color: rgb(7 25 35/var(--tw-text-opacity,1))}.text-\[\#0d9488\]{--tw-text-opacity: 1;color: rgb(13 148 136/var(--tw-text-opacity,1))}.text-\[\#0f766e\]{--tw-text-opacity: 1;color: rgb(15 118 110/var(--tw-text-opacity,1))}.text-\[\#102427\]{--tw-text-opacity: 1;color: rgb(16 36 39/var(--tw-text-opacity,1))}.text-\[\#16a34a\]{--tw-text-opacity: 1;color: rgb(22 163 74/var(--tw-text-opacity,1))}.text-\[\#172426\]{--tw-text-opacity: 1;color: rgb(23 36 38/var(--tw-text-opacity,1))}.text-\[\#182126\]{--tw-text-opacity: 1;color: rgb(24 33 38/var(--tw-text-opacity,1))}.text-\[\#18252d\]{--tw-text-opacity: 1;color: rgb(24 37 45/var(--tw-text-opacity,1))}.text-\[\#192421\]{--tw-text-opacity: 1;color: rgb(25 36 33/var(--tw-text-opacity,1))}.text-\[\#1f2b28\]{--tw-text-opacity: 1;color: rgb(31 43 40/var(--tw-text-opacity,1))}.text-\[\#211f1b\]{--tw-text-opacity: 1;color: rgb(33 31 27/var(--tw-text-opacity,1))}.text-\[\#23342f\]{--tw-text-opacity: 1;color: rgb(35 52 47/var(--tw-text-opacity,1))}.text-\[\#241915\]{--tw-text-opacity: 1;color: rgb(36 25 21/var(--tw-text-opacity,1))}.text-\[\#25110d\]{--tw-text-opacity: 1;color: rgb(37 17 13/var(--tw-text-opacity,1))}.text-\[\#25312d\]{--tw-text-opacity: 1;color: rgb(37 49 45/var(--tw-text-opacity,1))}.text-\[\#2b150f\]{--tw-text-opacity: 1;color: rgb(43 21 15/var(--tw-text-opacity,1))}.text-\[\#2b211b\]{--tw-text-opacity: 1;color: rgb(43 33 27/var(--tw-text-opacity,1))}.text-\[\#2c1712\]{--tw-text-opacity: 1;color: rgb(44 23 18/var(--tw-text-opacity,1))}.text-\[\#2c1a20\]{--tw-text-opacity: 1;color: rgb(44 26 32/var(--tw-text-opacity,1))}.text-\[\#334155\]{--tw-text-opacity: 1;color: rgb(51 65 85/var(--tw-text-opacity,1))}.text-\[\#3f6e62\]{--tw-text-opacity: 1;color: rgb(63 110 98/var(--tw-text-opacity,1))}.text-\[\#4b5b62\]{--tw-text-opacity: 1;color: rgb(75 91 98/var(--tw-text-opacity,1))}.text-\[\#4b7a6a\]{--tw-text-opacity: 1;color: rgb(75 122 106/var(--tw-text-opacity,1))}.text-\[\#52635c\]{--tw-text-opacity: 1;color: rgb(82 99 92/var(--tw-text-opacity,1))}.text-\[\#53625c\]{--tw-text-opacity: 1;color: rgb(83 98 92/var(--tw-text-opacity,1))}.text-\[\#53635e\]{--tw-text-opacity: 1;color: rgb(83 99 94/var(--tw-text-opacity,1))}.text-\[\#5b4b42\]{--tw-text-opacity: 1;color: rgb(91 75 66/var(--tw-text-opacity,1))}.text-\[\#5b7f62\]{--tw-text-opacity: 1;color: rgb(91 127 98/var(--tw-text-opacity,1))}.text-\[\#5d6b72\]{--tw-text-opacity: 1;color: rgb(93 107 114/var(--tw-text-opacity,1))}.text-\[\#5f6f68\]{--tw-text-opacity: 1;color: rgb(95 111 104/var(--tw-text-opacity,1))}.text-\[\#5f7f62\]{--tw-text-opacity: 1;color: rgb(95 127 98/var(--tw-text-opacity,1))}.text-\[\#607068\]{--tw-text-opacity: 1;color: rgb(96 112 104/var(--tw-text-opacity,1))}.text-\[\#607078\]{--tw-text-opacity: 1;color: rgb(96 112 120/var(--tw-text-opacity,1))}.text-\[\#61706a\]{--tw-text-opacity: 1;color: rgb(97 112 106/var(--tw-text-opacity,1))}.text-\[\#63716c\]{--tw-text-opacity: 1;color: rgb(99 113 108/var(--tw-text-opacity,1))}.text-\[\#6388bd\]{--tw-text-opacity: 1;color: rgb(99 136 189/var(--tw-text-opacity,1))}.text-\[\#655f55\]{--tw-text-opacity: 1;color: rgb(101 95 85/var(--tw-text-opacity,1))}.text-\[\#66716b\]{--tw-text-opacity: 1;color: rgb(102 113 107/var(--tw-text-opacity,1))}.text-\[\#6c8e74\]{--tw-text-opacity: 1;color: rgb(108 142 116/var(--tw-text-opacity,1))}.text-\[\#6d584d\]{--tw-text-opacity: 1;color: rgb(109 88 77/var(--tw-text-opacity,1))}.text-\[\#6f7f55\]{--tw-text-opacity: 1;color: rgb(111 127 85/var(--tw-text-opacity,1))}.text-\[\#6f8f65\]{--tw-text-opacity: 1;color: rgb(111 143 101/var(--tw-text-opacity,1))}.text-\[\#745f50\]{--tw-text-opacity: 1;color: rgb(116 95 80/var(--tw-text-opacity,1))}.text-\[\#78d7cb\]{--tw-text-opacity: 1;color: rgb(120 215 203/var(--tw-text-opacity,1))}.text-\[\#7a3034\]{--tw-text-opacity: 1;color: rgb(122 48 52/var(--tw-text-opacity,1))}.text-\[\#7a5c45\]{--tw-text-opacity: 1;color: rgb(122 92 69/var(--tw-text-opacity,1))}.text-\[\#7a665a\]{--tw-text-opacity: 1;color: rgb(122 102 90/var(--tw-text-opacity,1))}.text-\[\#7c3aed\]{--tw-text-opacity: 1;color: rgb(124 58 237/var(--tw-text-opacity,1))}.text-\[\#8c5a2b\]{--tw-text-opacity: 1;color: rgb(140 90 43/var(--tw-text-opacity,1))}.text-\[\#972f21\]{--tw-text-opacity: 1;color: rgb(151 47 33/var(--tw-text-opacity,1))}.text-\[\#9a7042\]{--tw-text-opacity: 1;color: rgb(154 112 66/var(--tw-text-opacity,1))}.text-\[\#b7791f\]{--tw-text-opacity: 1;color: rgb(183 121 31/var(--tw-text-opacity,1))}.text-\[\#b7efe8\]{--tw-text-opacity: 1;color: rgb(183 239 232/var(--tw-text-opacity,1))}.text-\[\#b86a25\]{--tw-text-opacity: 1;color: rgb(184 106 37/var(--tw-text-opacity,1))}.text-\[\#b94550\]{--tw-text-opacity: 1;color: rgb(185 69 80/var(--tw-text-opacity,1))}.text-\[\#b94b4f\]{--tw-text-opacity: 1;color: rgb(185 75 79/var(--tw-text-opacity,1))}.text-\[\#ba5a2a\]{--tw-text-opacity: 1;color: rgb(186 90 42/var(--tw-text-opacity,1))}.text-\[\#bdd4f3\]{--tw-text-opacity: 1;color: rgb(189 212 243/var(--tw-text-opacity,1))}.text-\[\#c46b39\]{--tw-text-opacity: 1;color: rgb(196 107 57/var(--tw-text-opacity,1))}.text-\[\#cfe3bd\]{--tw-text-opacity: 1;color: rgb(207 227 189/var(--tw-text-opacity,1))}.text-\[\#d6f2c6\]{--tw-text-opacity: 1;color: rgb(214 242 198/var(--tw-text-opacity,1))}.text-\[\#d94f54\]{--tw-text-opacity: 1;color: rgb(217 79 84/var(--tw-text-opacity,1))}.text-\[\#d97956\]{--tw-text-opacity: 1;color: rgb(217 121 86/var(--tw-text-opacity,1))}.text-\[\#e84a4f\]{--tw-text-opacity: 1;color: rgb(232 74 79/var(--tw-text-opacity,1))}.text-\[\#f3d59b\]{--tw-text-opacity: 1;color: rgb(243 213 155/var(--tw-text-opacity,1))}.text-\[\#f5d99b\]{--tw-text-opacity: 1;color: rgb(245 217 155/var(--tw-text-opacity,1))}.text-\[\#ff5a5f\]{--tw-text-opacity: 1;color: rgb(255 90 95/var(--tw-text-opacity,1))}.text-\[\#ffb4b6\]{--tw-text-opacity: 1;color: rgb(255 180 182/var(--tw-text-opacity,1))}.text-\[\#ffc8b5\]{--tw-text-opacity: 1;color: rgb(255 200 181/var(--tw-text-opacity,1))}.text-\[\#ffd7c7\]{--tw-text-opacity: 1;color: rgb(255 215 199/var(--tw-text-opacity,1))}.text-amber-100{--tw-text-opacity: 1;color: rgb(254 243 199/var(--tw-text-opacity,1))}.text-amber-200{--tw-text-opacity: 1;color: rgb(253 230 138/var(--tw-text-opacity,1))}.text-amber-300{--tw-text-opacity: 1;color: rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-400{--tw-text-opacity: 1;color: rgb(251 191 36/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity: 1;color: rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity: 1;color: rgb(180 83 9/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity: 1;color: rgb(191 219 254/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity: 1;color: rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity: 1;color: rgb(37 99 235/var(--tw-text-opacity,1))}.text-cyan-100{--tw-text-opacity: 1;color: rgb(207 250 254/var(--tw-text-opacity,1))}.text-cyan-200{--tw-text-opacity: 1;color: rgb(165 243 252/var(--tw-text-opacity,1))}.text-cyan-200\/80{color: rgba(213, 226, 207, .8)}.text-cyan-300{--tw-text-opacity: 1;color: rgb(103 232 249/var(--tw-text-opacity,1))}.text-cyan-600{--tw-text-opacity: 1;color: rgb(8 145 178/var(--tw-text-opacity,1))}.text-emerald-200{--tw-text-opacity: 1;color: rgb(167 243 208/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity: 1;color: rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity: 1;color: rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity: 1;color: rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity: 1;color: rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity: 1;color: rgb(17 24 39/var(--tw-text-opacity,1))}.text-indigo-100{--tw-text-opacity: 1;color: rgb(224 231 255/var(--tw-text-opacity,1))}.text-indigo-200{--tw-text-opacity: 1;color: rgb(199 210 254/var(--tw-text-opacity,1))}.text-indigo-300{--tw-text-opacity: 1;color: rgb(165 180 252/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity: 1;color: rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity: 1;color: rgb(194 65 12/var(--tw-text-opacity,1))}.text-purple-300{--tw-text-opacity: 1;color: rgb(216 180 254/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity: 1;color: rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity: 1;color: rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-100{--tw-text-opacity: 1;color: rgb(254 226 226/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity: 1;color: rgb(254 202 202/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity: 1;color: rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity: 1;color: rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-50{--tw-text-opacity: 1;color: rgb(254 242 242/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity: 1;color: rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity: 1;color: rgb(220 38 38/var(--tw-text-opacity,1))}.text-slate-100{--tw-text-opacity: 1;color: rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-200{--tw-text-opacity: 1;color: rgb(226 232 240/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity: 1;color: rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity: 1;color: rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity: 1;color: rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity: 1;color: rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity: 1;color: rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity: 1;color: rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity: 1;color: rgb(15 23 42/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity: 1;color: rgb(2 6 23/var(--tw-text-opacity,1))}.text-stone-100{--tw-text-opacity: 1;color: rgb(245 245 244/var(--tw-text-opacity,1))}.text-stone-200{--tw-text-opacity: 1;color: rgb(231 229 228/var(--tw-text-opacity,1))}.text-stone-300{--tw-text-opacity: 1;color: rgb(214 211 209/var(--tw-text-opacity,1))}.text-stone-500{--tw-text-opacity: 1;color: rgb(120 113 108/var(--tw-text-opacity,1))}.text-stone-600{--tw-text-opacity: 1;color: rgb(87 83 78/var(--tw-text-opacity,1))}.text-stone-800{--tw-text-opacity: 1;color: rgb(41 37 36/var(--tw-text-opacity,1))}.text-stone-900{--tw-text-opacity: 1;color: rgb(28 25 23/var(--tw-text-opacity,1))}.text-teal-200{--tw-text-opacity: 1;color: rgb(153 246 228/var(--tw-text-opacity,1))}.text-teal-600{--tw-text-opacity: 1;color: rgb(13 148 136/var(--tw-text-opacity,1))}.text-teal-700{--tw-text-opacity: 1;color: rgb(15 118 110/var(--tw-text-opacity,1))}.text-transparent{color: transparent}.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\/65{color: hsla(0,0%,100%,.65)}.text-white\/70{color: hsla(0,0%,100%,.7)}.text-white\/75{color: hsla(0,0%,100%,.75)}.text-white\/80{color: hsla(0,0%,100%,.8)}.text-white\/85{color: hsla(0,0%,100%,.85)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-\[\.52\]{opacity:.52}.opacity-\[\.58\]{opacity:.58}.mix-blend-multiply{mix-blend-mode:multiply}.\!shadow-\[0_18px_40px_rgba\(120\2c 45\2c 50\2c \.26\)\]{--tw-shadow: 0 18px 40px rgba(21, 93, 67, .26)!important;--tw-shadow-colored: 0 18px 40px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.\!shadow-\[0_18px_40px_rgba\(255\2c 90\2c 95\2c \.28\)\]{--tw-shadow: 0 18px 40px rgba(184, 202, 75, .28)!important;--tw-shadow-colored: 0 18px 40px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.\!shadow-\[0_18px_40px_rgba\(35\2c 72\2c 60\2c \.24\)\]{--tw-shadow: 0 18px 40px rgba(21, 93, 67, .24)!important;--tw-shadow-colored: 0 18px 40px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.\!shadow-\[0_18px_42px_rgba\(20\2c 184\2c 166\2c \.24\)\]{--tw-shadow: 0 18px 42px rgba(40, 115, 79, .24)!important;--tw-shadow-colored: 0 18px 42px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.\!shadow-\[0_18px_42px_rgba\(249\2c 115\2c 22\2c \.24\)\]{--tw-shadow: 0 18px 42px rgba(231, 121, 53, .24)!important;--tw-shadow-colored: 0 18px 42px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.\!shadow-\[0_18px_42px_rgba\(91\2c 127\2c 98\2c \.22\)\]{--tw-shadow: 0 18px 42px rgba(40, 115, 79, .22)!important;--tw-shadow-colored: 0 18px 42px var(--tw-shadow-color)!important;box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-\[0_0_12px_rgba\(110\2c 231\2c 183\2c \.9\)\]{box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(110\2c 231\2c 183\2c \.9\)\]{--tw-shadow: 0 0 12px rgba(184, 202, 75, .9);--tw-shadow-colored: 0 0 12px var(--tw-shadow-color)}.shadow-\[0_0_14px_rgba\(96\2c 165\2c 250\2c 0\.9\)\]{--tw-shadow: 0 0 14px rgba(184, 202, 75, .9);--tw-shadow-colored: 0 0 14px 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_0_20px_rgba\(37\2c 99\2c 235\2c 0\.35\)\]{--tw-shadow: 0 0 20px rgba(40, 115, 79, .35);--tw-shadow-colored: 0 0 20px 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_0_20px_rgba\(37\2c 99\2c 235\2c 0\.4\)\]{--tw-shadow: 0 0 20px rgba(40, 115, 79, .4);--tw-shadow-colored: 0 0 20px 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_0_28px_rgba\(239\2c 68\2c 68\2c \.18\)\]{--tw-shadow: 0 0 28px rgba(184, 202, 75, .18);--tw-shadow-colored: 0 0 28px 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_0_28px_rgba\(34\2c 211\2c 238\2c \.18\)\]{--tw-shadow: 0 0 28px rgba(40, 115, 79, .18);--tw-shadow-colored: 0 0 28px 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_40px_rgba\(15\2c 23\2c 42\2c 0\.45\)\]{--tw-shadow: 0 18px 40px rgba(9, 62, 45, .45);--tw-shadow-colored: 0 18px 40px 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_24px_60px_-28px_rgba\(15\2c 23\2c 42\2c 0\.28\)\]{--tw-shadow: 0 24px 60px -28px rgba(9, 62, 45, .28);--tw-shadow-colored: 0 24px 60px -28px 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_24px_60px_-30px_rgba\(15\2c 23\2c 42\2c 0\.22\)\]{--tw-shadow: 0 24px 60px -30px rgba(9, 62, 45, .22);--tw-shadow-colored: 0 24px 60px -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_24px_60px_rgba\(63\2c 28\2c 12\2c 0\.08\)\]{--tw-shadow: 0 24px 60px rgba(9, 62, 45, .08);--tw-shadow-colored: 0 24px 60px 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_24px_70px_rgba\(63\2c 28\2c 12\2c 0\.08\)\]{--tw-shadow: 0 24px 70px rgba(9, 62, 45, .08);--tw-shadow-colored: 0 24px 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_24px_80px_rgba\(28\2c 25\2c 23\2c 0\.18\)\]{--tw-shadow: 0 24px 80px rgba(28,25,23,.18);--tw-shadow-colored: 0 24px 80px 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_28px_80px_-36px_rgba\(15\2c 23\2c 42\2c 0\.3\)\]{--tw-shadow: 0 28px 80px -36px rgba(9, 62, 45, .3);--tw-shadow-colored: 0 28px 80px -36px 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_28px_90px_-34px_rgba\(239\2c 68\2c 68\2c 0\.45\)\]{--tw-shadow: 0 28px 90px -34px rgba(184, 202, 75, .45);--tw-shadow-colored: 0 28px 90px -34px 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_28px_90px_-36px_rgba\(15\2c 23\2c 42\2c 0\.55\)\]{--tw-shadow: 0 28px 90px -36px rgba(9, 62, 45, .55);--tw-shadow-colored: 0 28px 90px -36px 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_30px_60px_rgba\(15\2c 23\2c 42\2c 0\.55\)\]{--tw-shadow: 0 30px 60px rgba(9, 62, 45, .55);--tw-shadow-colored: 0 30px 60px 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_30px_70px_rgba\(15\2c 23\2c 42\2c 0\.6\)\]{--tw-shadow: 0 30px 70px rgba(9, 62, 45, .6);--tw-shadow-colored: 0 30px 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_30px_90px_rgba\(96\2c 45\2c 22\2c 0\.08\)\]{--tw-shadow: 0 30px 90px rgba(21, 93, 67, .08);--tw-shadow-colored: 0 30px 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)}.shadow-\[0_35px_110px_rgba\(53\2c 24\2c 12\2c 0\.22\)\]{--tw-shadow: 0 35px 110px rgba(9, 62, 45, .22);--tw-shadow-colored: 0 35px 110px 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_35px_120px_rgba\(0\2c 0\2c 0\2c 0\.35\)\]{--tw-shadow: 0 35px 120px rgba(0,0,0,.35);--tw-shadow-colored: 0 35px 120px 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_40px_120px_rgba\(142\2c 47\2c 32\2c 0\.28\)\]{--tw-shadow: 0 40px 120px rgba(21, 93, 67, .28);--tw-shadow-colored: 0 40px 120px 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_40px_120px_rgba\(20\2c 12\2c 10\2c 0\.24\)\]{--tw-shadow: 0 40px 120px rgba(9, 62, 45, .24);--tw-shadow-colored: 0 40px 120px 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_40px_120px_rgba\(53\2c 24\2c 12\2c 0\.22\)\]{--tw-shadow: 0 40px 120px rgba(9, 62, 45, .22);--tw-shadow-colored: 0 40px 120px var(--tw-shadow-color)}.shadow-\[0_40px_120px_rgba\(53\2c 24\2c 12\2c 0\.22\)\],.shadow-glow{box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-glow{--tw-shadow: 0 0 42px rgba(40, 115, 79, .32);--tw-shadow-colored: 0 0 42px var(--tw-shadow-color)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px 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-\[\#192421\]\/15{--tw-shadow-color: rgba(9, 62, 45, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#192421\]\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#1f2b28\]\/15{--tw-shadow-color: rgba(9, 62, 45, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#1f2b28\]\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#23342f\]\/15{--tw-shadow-color: rgba(9, 62, 45, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#23342f\]\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#2c1a20\]\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#d6c6b2\]\/25{--tw-shadow-color: hsla(33,31%,77%,.25);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#d7dfd2\]\/30{--tw-shadow-color: hsla(97,17%,85%,.3);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#d7dfd2\]\/35{--tw-shadow-color: hsla(97,17%,85%,.35);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[\#d9c6aa\]\/25{--tw-shadow-color: hsla(36,38%,76%,.25);--tw-shadow: var(--tw-shadow-colored)}.shadow-amber-900\/10{--tw-shadow-color: rgba(21, 93, 67, .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-amber-900\/5{--tw-shadow-color: rgba(21, 93, 67, .05);--tw-shadow: var(--tw-shadow-colored)}.shadow-black{--tw-shadow-color: #000;--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/20{--tw-shadow-color: rgba(0,0,0,.2);--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/25{--tw-shadow-color: rgba(0,0,0,.25);--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/30{--tw-shadow-color: rgba(0,0,0,.3);--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/40{--tw-shadow-color: rgba(0,0,0,.4);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-900\/20{--tw-shadow-color: rgba(21, 93, 67, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-900\/30{--tw-shadow-color: rgba(21, 93, 67, .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-emerald-950\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-gray-200\/70{--tw-shadow-color: rgba(229,231,235,.7);--tw-shadow: var(--tw-shadow-colored)}.shadow-orange-100{--tw-shadow-color: #edf2e8;--tw-shadow: var(--tw-shadow-colored)}.shadow-orange-200{--tw-shadow-color: #d5e2cf;--tw-shadow: var(--tw-shadow-colored)}.shadow-orange-950\/15{--tw-shadow-color: rgba(9, 62, 45, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-orange-950\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-100\/50{--tw-shadow-color: hsla(0,93%,94%,.5);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-100\/70{--tw-shadow-color: hsla(0,93%,94%,.7);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-200{--tw-shadow-color: #edf2e8;--tw-shadow: var(--tw-shadow-colored)}.shadow-red-200\/50{--tw-shadow-color: hsla(0,96%,89%,.5);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-500\/30{--tw-shadow-color: rgba(184, 202, 75, .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-600\/15{--tw-shadow-color: rgba(40, 115, 79, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-600\/30{--tw-shadow-color: rgba(40, 115, 79, .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-950\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-950\/30{--tw-shadow-color: rgba(9, 62, 45, .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-950\/40{--tw-shadow-color: rgba(9, 62, 45, .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-rose-100{--tw-shadow-color: #f6f5ef;--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200{--tw-shadow-color: #edf2e8;--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-900\/10{--tw-shadow-color: rgba(9, 62, 45, .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-900\/15{--tw-shadow-color: rgba(9, 62, 45, .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-900\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-950\/20{--tw-shadow-color: rgba(9, 62, 45, .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-950\/40{--tw-shadow-color: rgba(9, 62, 45, .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-950\/50{--tw-shadow-color: rgba(9, 62, 45, .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-stone-200\/60{--tw-shadow-color: hsla(20,6%,90%,.6);--tw-shadow: var(--tw-shadow-colored)}.shadow-stone-900\/20{--tw-shadow-color: rgba(28,25,23,.2);--tw-shadow: var(--tw-shadow-colored)}.shadow-teal-100{--tw-shadow-color: #edf2e8;--tw-shadow: var(--tw-shadow-colored)}.shadow-teal-900\/20{--tw-shadow-color: rgba(21, 93, 67, .2);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline: 2px solid transparent;outline-offset: 2px}.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)}.ring-1,.ring-2{box-shadow: var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-\[\#dbe4d7\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(219 228 215/var(--tw-ring-opacity,1))}.ring-\[\#e4dccd\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(228 220 205/var(--tw-ring-opacity,1))}.ring-\[\#e6e0d7\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(230 224 215/var(--tw-ring-opacity,1))}.ring-\[\#e9dccf\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(233 220 207/var(--tw-ring-opacity,1))}.ring-\[\#e9dfcf\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(233 223 207/var(--tw-ring-opacity,1))}.ring-\[\#eaded1\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(234 222 209/var(--tw-ring-opacity,1))}.ring-\[\#eadfd2\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(234 223 210/var(--tw-ring-opacity,1))}.ring-\[\#f1ddd6\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(241 221 214/var(--tw-ring-opacity,1))}.ring-\[\#f2ddd6\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(242 221 214/var(--tw-ring-opacity,1))}.ring-\[\#f5ded7\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(245 222 215/var(--tw-ring-opacity,1))}.ring-orange-100{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 237 213/var(--tw-ring-opacity,1))}.ring-red-500\/70{--tw-ring-color: rgba(184, 202, 75, .7)}.ring-slate-200{--tw-ring-opacity: 1;--tw-ring-color: rgb(226 232 240/var(--tw-ring-opacity,1))}.ring-white\/5{--tw-ring-color: hsla(0,0%,100%,.05)}.blur{--tw-blur: blur(8px)}.blur,.blur-2xl{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)}.blur-2xl{--tw-blur: blur(40px)}.blur-3xl{--tw-blur: blur(64px)}.blur-3xl,.blur-\[1px\]{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)}.blur-\[1px\]{--tw-blur: blur(1px)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.drop-shadow,.drop-shadow-\[0_0_28px_rgba\(251\2c 191\2c 36\2c \.45\)\]{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)}.drop-shadow-\[0_0_28px_rgba\(251\2c 191\2c 36\2c \.45\)\]{--tw-drop-shadow: drop-shadow(0 0 28px rgba(231, 121, 53, .45))}.grayscale{--tw-grayscale: grayscale(100%)}.grayscale,.saturate-150{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)}.saturate-150{--tw-saturate: saturate(1.5)}.filter{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-blur{--tw-backdrop-blur: blur(8px)}.backdrop-blur,.backdrop-blur-md{-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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px)}.backdrop-blur-sm,.backdrop-blur-xl{-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)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px)}.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}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[animation-delay\:1800ms\]{animation-delay:1.8s}.\[animation-delay\:900ms\]{animation-delay:.9s}.\[background-image\:linear-gradient\(rgba\(120\2c 113\2c 108\2c 0\.08\)_1px\2c transparent_1px\)\2c linear-gradient\(90deg\2c rgba\(120\2c 113\2c 108\2c 0\.08\)_1px\2c transparent_1px\)\]{background-image: linear-gradient(hsla(25,5%,45%,.08) 1px,transparent 0),linear-gradient(90deg,hsla(25,5%,45%,.08) 1px,transparent 0)}.\[background-size\:56px_56px\]{background-size: 56px 56px}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity: 1;color: rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity: 1;color: rgb(156 163 175/var(--tw-text-opacity,1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{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))}.hover\:-translate-y-1:hover{--tw-translate-y: -0.25rem}.hover\:-translate-y-2:hover{--tw-translate-y: -0.5rem}.hover\:-translate-y-2:hover,.hover\:scale-105:hover{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))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1}.hover\:scale-110:hover,.hover\:scale-\[1\.03\]:hover{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))}.hover\:scale-\[1\.03\]:hover{--tw-scale-x: 1.03;--tw-scale-y: 1.03}.hover\:border-amber-500:hover{--tw-border-opacity: 1;border-color: rgb(245 158 11/var(--tw-border-opacity,1))}.hover\:border-blue-200:hover{--tw-border-opacity: 1;border-color: rgb(191 219 254/var(--tw-border-opacity,1))}.hover\:border-blue-400:hover{--tw-border-opacity: 1;border-color: rgb(96 165 250/var(--tw-border-opacity,1))}.hover\:border-blue-400\/60:hover{border-color: rgba(184, 202, 75, .6)}.hover\:border-cyan-200:hover{--tw-border-opacity: 1;border-color: rgb(165 243 252/var(--tw-border-opacity,1))}.hover\:border-cyan-400\/60:hover{border-color: rgba(40, 115, 79, .6)}.hover\:border-purple-200:hover{--tw-border-opacity: 1;border-color: rgb(233 213 255/var(--tw-border-opacity,1))}.hover\:border-purple-400\/60:hover{border-color: rgba(213, 226, 207, .6)}.hover\:border-red-400:hover{--tw-border-opacity: 1;border-color: rgb(248 113 113/var(--tw-border-opacity,1))}.hover\:border-red-400\/50:hover{border-color: hsla(0,91%,71%,.5)}.hover\:border-red-600:hover{--tw-border-opacity: 1;border-color: rgb(220 38 38/var(--tw-border-opacity,1))}.hover\:\!bg-white\/20:hover{background-color: hsla(0,0%,100%,.2)!important}.hover\:bg-\[\#0f766e\]:hover{--tw-bg-opacity: 1;background-color: rgb(15 118 110/var(--tw-bg-opacity,1))}.hover\:bg-\[\#e84a4f\]:hover{--tw-bg-opacity: 1;background-color: rgb(232 74 79/var(--tw-bg-opacity,1))}.hover\:bg-\[\#f5fbfa\]:hover{--tw-bg-opacity: 1;background-color: rgb(245 251 250/var(--tw-bg-opacity,1))}.hover\:bg-\[\#f7fbfa\]:hover{--tw-bg-opacity: 1;background-color: rgb(247 251 250/var(--tw-bg-opacity,1))}.hover\:bg-\[\#fff4ec\]:hover{--tw-bg-opacity: 1;background-color: rgb(255 244 236/var(--tw-bg-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity: 1;background-color: rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-amber-200:hover{--tw-bg-opacity: 1;background-color: rgb(253 230 138/var(--tw-bg-opacity,1))}.hover\:bg-amber-400:hover{--tw-bg-opacity: 1;background-color: rgb(251 191 36/var(--tw-bg-opacity,1))}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color: rgb(59 130 246/var(--tw-bg-opacity,1))}.hover\:bg-cyan-300\/15:hover{background-color: rgba(184, 202, 75, .15)}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color: rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-indigo-800:hover{--tw-bg-opacity: 1;background-color: rgb(55 48 163/var(--tw-bg-opacity,1))}.hover\:bg-indigo-900:hover{--tw-bg-opacity: 1;background-color: rgb(49 46 129/var(--tw-bg-opacity,1))}.hover\:bg-orange-50:hover{--tw-bg-opacity: 1;background-color: rgb(255 247 237/var(--tw-bg-opacity,1))}.hover\:bg-orange-600:hover{--tw-bg-opacity: 1;background-color: rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color: rgb(248 113 113/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color: rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-500:hover{--tw-bg-opacity: 1;background-color: rgb(239 68 68/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/25:hover{background-color: rgba(184, 202, 75, .25)}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color: rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color: rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color: rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-teal-50:hover{--tw-bg-opacity: 1;background-color: rgb(240 253 250/var(--tw-bg-opacity,1))}.hover\:bg-teal-700:hover{--tw-bg-opacity: 1;background-color: rgb(15 118 110/var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color: hsla(0,0%,100%,.1)}.hover\:bg-white\/15:hover{background-color: hsla(0,0%,100%,.15)}.hover\:bg-white\/20:hover{background-color: hsla(0,0%,100%,.2)}.hover\:bg-white\/70:hover{background-color: hsla(0,0%,100%,.7)}.hover\:text-\[\#0f766e\]:hover{--tw-text-opacity: 1;color: rgb(15 118 110/var(--tw-text-opacity,1))}.hover\:text-\[\#3f6e62\]:hover{--tw-text-opacity: 1;color: rgb(63 110 98/var(--tw-text-opacity,1))}.hover\:text-\[\#5b7f62\]:hover{--tw-text-opacity: 1;color: rgb(91 127 98/var(--tw-text-opacity,1))}.hover\:text-\[\#6c8e74\]:hover{--tw-text-opacity: 1;color: rgb(108 142 116/var(--tw-text-opacity,1))}.hover\:text-\[\#b94550\]:hover{--tw-text-opacity: 1;color: rgb(185 69 80/var(--tw-text-opacity,1))}.hover\:text-\[\#d94f54\]:hover{--tw-text-opacity: 1;color: rgb(217 79 84/var(--tw-text-opacity,1))}.hover\:text-amber-600:hover{--tw-text-opacity: 1;color: rgb(217 119 6/var(--tw-text-opacity,1))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color: rgb(37 99 235/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color: rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-orange-600:hover{--tw-text-opacity: 1;color: rgb(234 88 12/var(--tw-text-opacity,1))}.hover\:text-orange-700:hover{--tw-text-opacity: 1;color: rgb(194 65 12/var(--tw-text-opacity,1))}.hover\:text-red-200:hover{--tw-text-opacity: 1;color: rgb(254 202 202/var(--tw-text-opacity,1))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color: rgb(252 165 165/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity: 1;color: rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color: rgb(220 38 38/var(--tw-text-opacity,1))}.hover\:text-teal-700:hover{--tw-text-opacity: 1;color: rgb(15 118 110/var(--tw-text-opacity,1))}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_28px_80px_-32px_rgba\(15\2c 23\2c 42\2c 0\.34\)\]:hover{--tw-shadow: 0 28px 80px -32px rgba(9, 62, 45, .34);--tw-shadow-colored: 0 28px 80px -32px var(--tw-shadow-color);box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-xl:hover{box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.hover\:shadow-blue-900\/10:hover{--tw-shadow-color: rgba(21, 93, 67, .1);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-red-100\/50:hover{--tw-shadow-color: hsla(0,93%,94%,.5);--tw-shadow: var(--tw-shadow-colored)}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color: rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:ring-4:focus{--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(4px + 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)}.focus\:ring-blue-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(219 234 254/var(--tw-ring-opacity,1))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05}.group:hover .group-hover\:scale-105,.group:hover .group-hover\:scale-\[1\.03\]{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))}.group:hover .group-hover\:scale-\[1\.03\]{--tw-scale-x: 1.03;--tw-scale-y: 1.03}@media (min-width:640px){.sm\:ml-2{margin-left:.5rem}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:w-auto{width:auto}.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:p-12{padding:3rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:left-1\/2{left:50%}.md\:col-span-2{grid-column:span 2/span 2}.md\:-ml-\[10px\]{margin-left:-10px}.md\:-ml-\[1px\]{margin-left:-1px}.md\:mt-0{margin-top:0}.md\:mt-10{margin-top:2.5rem}.md\:mt-6{margin-top:1.5rem}.md\:mt-9{margin-top:2.25rem}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}.md\:h-\[520px\]{height:520px}.md\:\!min-h-\[56px\]{min-height:56px!important}.md\:w-\[47\%\]{width:47%}.md\:w-auto{width:auto}.md\:translate-y-6{--tw-translate-y: 1.5rem;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))}.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\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.md\:grid-cols-\[1\.2fr\2c 0\.8fr\]{grid-template-columns:1.2fr .8fr}.md\:grid-cols-\[120px_1fr\]{grid-template-columns:120px 1fr}.md\:grid-cols-\[280px_minmax\(0\2c 1fr\)\]{grid-template-columns:280px minmax(0,1fr)}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-0{gap:0}.md\:gap-16{gap:4rem}.md\:gap-4{gap:1rem}.md\:gap-8{gap:2rem}.md\:space-y-24>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(6rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(6rem*var(--tw-space-y-reverse))}.md\:divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width: calc(1px*var(--tw-divide-x-reverse));border-left-width: calc(1px*(1 - var(--tw-divide-x-reverse)))}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width: calc(0px*(1 - var(--tw-divide-y-reverse)));border-bottom-width: calc(0px*var(--tw-divide-y-reverse))}.md\:border-b-0{border-bottom-width: 0}.md\:border-r{border-right-width: 1px}.md\:border-white\/10{border-color: hsla(0,0%,100%,.1)}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:p-6{padding:1.5rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-24{padding-top:6rem;padding-bottom:6rem}.md\:pb-0{padding-bottom:0}.md\:pl-0{padding-left:0}.md\:pl-10{padding-left:2.5rem}.md\:pl-8{padding-left:2rem}.md\:pr-10{padding-right:2.5rem}.md\:pr-8{padding-right:2rem}.md\:pt-0{padding-top:0}.md\:pt-32{padding-top:8rem}.md\:text-right{text-align:right}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-\[10rem\]{font-size:10rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:leading-9{line-height:2.25rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-40{top:10rem}.lg\:block{display:block}.lg\:inline-flex{display:inline-flex}.lg\:grid{display:grid}.lg\:h-full{height:100%}.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-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[\.84fr_1\.16fr\]{grid-template-columns:.84fr 1.16fr}.lg\:grid-cols-\[\.86fr_1\.14fr\]{grid-template-columns:.86fr 1.14fr}.lg\:grid-cols-\[\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.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-\[\.98fr_1\.02fr\]{grid-template-columns:.98fr 1.02fr}.lg\:grid-cols-\[\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[0\.85fr_1\.15fr\]{grid-template-columns:.85fr 1.15fr}.lg\:grid-cols-\[0\.86fr_1\.14fr\]{grid-template-columns:.86fr 1.14fr}.lg\:grid-cols-\[0\.88fr_1\.12fr\]{grid-template-columns:.88fr 1.12fr}.lg\:grid-cols-\[0\.92fr_1\.08fr\]{grid-template-columns:.92fr 1.08fr}.lg\:grid-cols-\[0\.95fr_1\.05fr\]{grid-template-columns:.95fr 1.05fr}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.02fr_0\.98fr\],.lg\:grid-cols-\[1\.02fr_\.98fr\]{grid-template-columns:1.02fr .98fr}.lg\:grid-cols-\[1\.03fr_\.97fr\]{grid-template-columns:1.03fr .97fr}.lg\:grid-cols-\[1\.04fr_\.96fr\]{grid-template-columns:1.04fr .96fr}.lg\:grid-cols-\[1\.05fr_0\.95fr\],.lg\:grid-cols-\[1\.05fr_\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1\.06fr_0\.94fr\]{grid-template-columns:1.06fr .94fr}.lg\:grid-cols-\[1\.08fr_0\.92fr\]{grid-template-columns:1.08fr .92fr}.lg\:grid-cols-\[1\.15fr_0\.85fr_0\.85fr\]{grid-template-columns:1.15fr .85fr .85fr}.lg\:grid-cols-\[1\.1fr\2c 1fr\]{grid-template-columns:1.1fr 1fr}.lg\:grid-cols-\[1\.1fr_0\.9fr\]{grid-template-columns:1.1fr .9fr}.lg\:grid-cols-\[1\.2fr\2c 0\.8fr\],.lg\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}.lg\:grid-cols-\[1fr_\.8fr\]{grid-template-columns:1fr .8fr}.lg\:grid-cols-\[1fr_0\.92fr\],.lg\:grid-cols-\[1fr_\.92fr\]{grid-template-columns:1fr .92fr}.lg\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.lg\:grid-cols-\[1fr_1fr_0\.92fr\]{grid-template-columns:1fr 1fr .92fr}.lg\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:self-start{align-self:flex-start}.lg\:p-10{padding:2.5rem}.lg\:p-12{padding:3rem}.lg\:p-14{padding:3.5rem}.lg\:p-6{padding:1.5rem}.lg\:p-8{padding:2rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.lg\:py-20{padding-top:5rem;padding-bottom:5rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:pb-20{padding-bottom:5rem}.lg\:pb-24{padding-bottom:6rem}.lg\:pt-24{padding-top:6rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1280px){.xl\:h-\[620px\]{height:620px}.xl\:h-full{height:100%}.xl\:min-h-0{min-height:0}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-\[0\.92fr_1\.08fr\]{grid-template-columns:.92fr 1.08fr}.xl\:grid-cols-\[0\.96fr_1\.04fr\]{grid-template-columns:.96fr 1.04fr}.xl\:grid-cols-\[286px_minmax\(0\2c 1fr\)_320px\]{grid-template-columns:286px minmax(0,1fr) 320px}.xl\:items-center{align-items:center}.xl\:p-4{padding:1rem}.xl\:py-2{padding-top:.5rem;padding-bottom:.5rem}.xl\:text-6xl{font-size:3.75rem;line-height:1}}

/* ===== styles.css ===== */


* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

/* Representative teachers */
.representative-teachers-page {
  color: #093e2d;
  background: #f7f8fa;
}

.teacher-hero {
  color: #fff;
  background: linear-gradient(110deg, rgba(21, 93, 67, .96), rgba(21, 93, 67, .9)),
    url("/assets/training-process.jpg") center 42% / cover;
}

.teacher-hero-inner {
  min-height: 390px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  padding-top: 72px;
  padding-bottom: 72px;
}

.teacher-hero-inner > div:first-child {
  max-width: 760px;
}

.teacher-kicker {
  margin: 0 0 12px;
  color: #e77935;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.teacher-hero .teacher-kicker {
  color: #d5e2cf;
}

.teacher-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.16;
}

.teacher-hero p:last-child {
  max-width: 680px;
  margin: 22px 0 0;
  color: rgba(255, 255, 255, .84);
  font-size: 18px;
  line-height: 1.9;
}

.teacher-hero-stat {
  flex: 0 0 176px;
  border-left: 1px solid rgba(255, 255, 255, .32);
  padding: 18px 0 18px 36px;
}

.teacher-hero-stat strong,
.teacher-hero-stat span {
  display: block;
}

.teacher-hero-stat strong {
  color: #d5e2cf;
  font-size: 64px;
  line-height: 1;
}

.teacher-hero-stat span {
  margin-top: 10px;
  color: rgba(255, 255, 255, .82);
  font-weight: 700;
}

.teacher-gallery-section {
  padding: 80px 0 72px;
}

.teacher-section-heading {
  max-width: 720px;
  margin-bottom: 34px;
}

.teacher-section-heading h2 {
  margin: 0;
  color: #093e2d;
  font-size: clamp(30px, 4vw, 42px);
}

.teacher-section-heading > p:last-child {
  margin: 14px 0 0;
  color: #e77935;
  line-height: 1.8;
}

.teacher-qualification-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.teacher-qualification-card {
  min-width: 0;
  overflow: hidden;
  position: relative;
  padding: 0;
  border: 1px solid #dddfe4;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(9, 62, 45, .08);
  cursor: zoom-in;
}

.teacher-qualification-card img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  object-position: top center;
  transition: transform .35s ease;
}

.teacher-qualification-card span {
  position: absolute;
  right: 12px;
  bottom: 12px;
  padding: 7px 12px;
  border-radius: 4px;
  color: #fff;
  background: rgba(9, 62, 45, .9);
  font-size: 14px;
  font-weight: 800;
}

.teacher-qualification-card:hover img,
.teacher-qualification-card:focus-visible img {
  transform: scale(1.025);
}

.teacher-qualification-card:focus-visible {
  outline: 3px solid #e77935;
  outline-offset: 3px;
}

.teacher-qualification-note {
  margin: 28px 0 0;
  color: #e77935;
  font-size: 14px;
  text-align: center;
}

.teacher-value-section {
  padding: 64px 0;
  color: #fff;
  background: #093e2d;
}

.teacher-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 42px;
}

.teacher-value-grid article {
  padding-left: 20px;
  border-left: 2px solid #e77935;
}

.teacher-value-grid svg {
  width: 28px;
  height: 28px;
  color: #b8ca4b;
}

.teacher-value-grid h2 {
  margin: 16px 0 8px;
  color: #fff;
  font-size: 22px;
}

.teacher-value-grid p {
  margin: 0;
  color: rgba(255, 255, 255, .7);
  line-height: 1.8;
}

.teacher-lightbox[hidden] {
  display: none;
}

.teacher-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10020;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(9, 62, 45, .92);
}

.teacher-lightbox figure {
  margin: 0;
  max-width: min(92vw, 760px);
  max-height: 92vh;
  text-align: center;
}

.teacher-lightbox img {
  display: block;
  max-width: 100%;
  max-height: calc(92vh - 42px);
  margin: auto;
  border-radius: 4px;
  object-fit: contain;
}

.teacher-lightbox figcaption {
  margin-top: 10px;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
}

.teacher-lightbox-close {
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 1;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 50%;
  color: #fff;
  background: rgba(0, 0, 0, .35);
  cursor: pointer;
}

.teacher-lightbox-open {
  overflow: hidden;
}

@media (max-width: 900px) {
  .teacher-hero-inner {
    min-height: 340px;
  }

  .teacher-qualification-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .teacher-hero-inner {
    min-height: 310px;
    align-items: flex-end;
    padding-top: 54px;
    padding-bottom: 48px;
  }

  .teacher-hero-stat {
    display: none;
  }

  .teacher-hero h1 {
    font-size: 34px;
  }

  .teacher-hero p:last-child {
    font-size: 16px;
    line-height: 1.75;
  }

  .teacher-gallery-section {
    padding: 54px 0;
  }

  .teacher-qualification-grid,
  .teacher-value-grid {
    grid-template-columns: 1fr;
  }

  .teacher-qualification-grid {
    gap: 18px;
  }

  .teacher-value-grid {
    gap: 30px;
  }

  .teacher-lightbox {
    padding: 56px 10px 14px;
  }
}

body {
  min-width: 320px;
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", Arial, sans-serif;
  line-height: 1.65;
  overflow-x: hidden;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  color: inherit;
}

section[id],
footer[id] {
  scroll-margin-top: 142px;
}

[data-training-tabs] {
  overflow-x: hidden;
}

.container {
  width: min(var(--max), calc(100% - 96px));
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--white);
  box-shadow: 0 4px 18px rgba(9, 62, 45, 0.08);
}

.topbar {
  background: #f3f4f6;
  color: #155d43;
  font-size: 14px;
}

.topbar-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  min-height: 48px;
  gap: 24px;
}

.topbar-inner span:nth-child(2) {
  text-align: center;
}

.topbar-inner a {
  display: inline-flex;
  align-items: center;
  justify-self: end;
  gap: 10px;
  color: var(--coral);
  font-size: 18px;
}

.topbar-inner svg {
  width: 22px;
  height: 22px;
  padding: 3px;
  border: 1px solid var(--coral);
  border-radius: 999px;
}

.nav-shell {
  background: var(--white);
  transition: padding-bottom 0.18s ease;
}

.nav-inner {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 106px;
  gap: 28px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 18px;
  flex: 0 0 auto;
}

.brand-logo {
  display: grid;
  width: 70px;
  height: 70px;
  place-items: center;
  border-radius: 18px 18px 6px 18px;
  background: linear-gradient(135deg, var(--coral), #b8ca4b);
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0;
}

.brand-logo-image {
  display: block;
  width: 84px;
  height: 84px;
  flex: 0 0 auto;
  border-radius: 8px;
  object-fit: contain;
}

.brand-copy {
  display: grid;
  gap: 4px;
}

.brand-copy strong {
  font-size: 24px;
  line-height: 1.1;
}

.brand-copy small {
  max-width: none;
  color: var(--muted);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.35;
}

.site-nav {
  display: flex;
  justify-content: flex-end;
  align-items: stretch;
  gap: 2px;
  margin-left: auto;
}

.nav-item {
  position: relative;
}

.nav-item > a {
  display: grid;
  min-height: 106px;
  place-items: center;
  padding: 0 12px;
  color: #155d43;
  font-size: 16px;
  white-space: nowrap;
}

.nav-item > a:hover,
.nav-item > a:focus-visible,
.nav-item.active > a,
.nav-item > a.is-current {
  color: var(--coral);
  outline: none;
}

.has-menu:hover > a,
.has-menu:focus-within > a {
  color: var(--coral);
}

.has-mega:hover > a,
.has-mega:focus-within > a {
  color: var(--coral);
}

.dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 10;
  display: grid;
  min-width: 136px;
  padding: 8px 0;
  background: var(--coral);
  color: #fff;
  opacity: 0;
  transform: translate(-50%, 8px);
  visibility: hidden;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.dropdown::before {
  position: absolute;
  top: -8px;
  left: 50%;
  width: 16px;
  height: 16px;
  content: "";
  background: var(--coral);
  transform: translateX(-50%) rotate(45deg);
}

.has-menu:hover .dropdown,
.has-menu:focus-within .dropdown,
.has-menu.expanded .dropdown {
  opacity: 1;
  transform: translate(-50%, 0);
  visibility: visible;
}

.dropdown a {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 44px;
  place-items: center;
  padding: 0 24px;
  color: #fff;
  font-weight: 700;
  white-space: nowrap;
}

.dropdown a:hover,
.dropdown a:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  outline: none;
}

.mega-site-nav {
  align-items: stretch;
}

.mega-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 10;
  display: none;
  width: min(760px, calc(100vw - 40px));
  padding-top: 10px;
  opacity: 0;
  transform: translate(-50%, 8px);
  visibility: hidden;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.nav-item:last-child .mega-menu {
  right: 0;
  left: auto;
  transform: translateY(8px);
}

.nav-item:last-child .mega-menu::before {
  right: 42px;
  left: auto;
  transform: rotate(45deg);
}

.mega-menu::before {
  position: absolute;
  top: 2px;
  left: 50%;
  width: 16px;
  height: 16px;
  content: "";
  background: var(--white);
  transform: translateX(-50%) rotate(45deg);
  box-shadow: -1px -1px 0 rgba(9, 62, 45, 0.06);
}

.has-mega:hover .mega-menu,
.has-mega:focus-within .mega-menu,
.has-mega.expanded .mega-menu {
  display: block;
  opacity: 1;
  transform: translate(-50%, 0);
  visibility: visible;
}

.nav-item:last-child:hover .mega-menu,
.nav-item:last-child:focus-within .mega-menu,
.nav-item:last-child.expanded .mega-menu {
  transform: translateY(0);
}

.mega-menu-inner {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--white);
  box-shadow: var(--shadow);
}

.mega-menu-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.mega-menu-heading strong {
  font-size: 18px;
}

.mega-menu-heading span {
  color: var(--muted);
  font-size: 13px;
}

.mega-menu-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.mega-menu-links a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
}

.mega-menu-links a:hover,
.mega-menu-links a:focus-visible {
  border-color: rgba(184, 202, 75, 0.32);
  color: var(--coral);
  outline: none;
}

@media (min-width: 981px) {
  .nav-shell:has(.has-mega:hover),
  .nav-shell:has(.has-mega:focus-within),
  .nav-shell:has(.has-mega.expanded) {
    padding-bottom: 310px;
  }
}

.menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  place-items: center;
  margin-left: auto;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
}

.hero {
  position: relative;
  min-height: 760px;
  overflow: hidden;
  background: #093e2d;
}

.hero-bg,
.hero-overlay,
.hero-image {
  position: absolute;
  inset: 0;
}

.hero-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  filter: saturate(0.96) contrast(1.02);
  animation: heroFade 18s infinite;
}

.hero-image.first {
  animation-delay: 0s;
}

.hero-image.second {
  animation-delay: 6s;
}

.hero-image.third {
  animation-delay: 12s;
}

.hero-overlay {
  z-index: 1;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(246, 245, 239, 0.7) 31%, rgba(255, 255, 255, 0.08) 68%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.22));
}

.hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 760px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.hero-eyebrow {
  margin: 0 0 16px;
  padding: 8px 14px;
  background: rgba(184, 202, 75, 0.1);
  color: var(--coral);
  font-weight: 800;
}

.hero h1 {
  max-width: 680px;
  margin: 0;
  color: #28734f;
  font-size: 70px;
  font-weight: 900;
  line-height: 1.05;
  text-wrap: balance;
}

.hero p:not(.hero-eyebrow) {
  max-width: 620px;
  margin: 20px 0 0;
  color: #155d43;
  font-size: 22px;
}

.hero-actions {
  display: flex;
  gap: 14px;
  margin-top: 34px;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 52px;
  padding: 0 26px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-weight: 800;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.btn:hover {
  transform: translateY(-2px);
}

.btn svg {
  width: 18px;
  height: 18px;
}

.btn.primary {
  background: linear-gradient(135deg, var(--coral), var(--coral-deep));
  color: #fff;
  box-shadow: 0 12px 28px rgba(184, 202, 75, 0.25);
}

.btn.outline {
  border-color: rgba(184, 202, 75, 0.45);
  background: rgba(255, 255, 255, 0.78);
  color: var(--coral);
}

.hero-arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.4);
  color: rgba(9, 62, 45, 0.55);
  cursor: pointer;
  transform: translateY(-50%);
}

.hero-arrow.prev {
  left: 5%;
}

.hero-arrow.next {
  right: 5%;
}

.hero-dots {
  position: absolute;
  bottom: 24px;
  left: 50%;
  z-index: 3;
  display: flex;
  gap: 8px;
  transform: translateX(-50%);
}

.hero-dots span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.58);
}

.hero-dots .active {
  background: var(--coral);
}

.float-tools {
  position: fixed;
  top: 38%;
  right: 0;
  z-index: 70;
  display: grid;
  background: rgba(40, 40, 40, 0.62);
}

.float-tools a {
  display: grid;
  width: 60px;
  height: 60px;
  place-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.22);
  color: #fff;
}

.float-tools svg {
  width: 28px;
  height: 28px;
}

.contact-widget {
  position: fixed;
  top: 38%;
  right: 0;
  z-index: 90;
  display: grid;
  gap: 1px;
  overflow: hidden;
  border-radius: 18px 0 0 18px;
  box-shadow: 0 18px 42px rgba(9, 62, 45, 0.18);
}

.contact-widget button,
.contact-widget a {
  display: grid;
  place-items: center;
  width: 58px;
  min-height: 58px;
  border: 0;
  background: rgba(35, 37, 42, 0.92);
  color: #fff;
  cursor: pointer;
  overflow: hidden;
  padding: 0;
  transition: background 0.2s ease;
}

.contact-widget button:hover,
.contact-widget button:focus-visible,
.contact-widget a:hover,
.contact-widget a:focus-visible {
  background: var(--coral);
  outline: none;
}

.contact-widget svg {
  width: 26px;
  height: 26px;
}

.contact-widget span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.modal-open {
  overflow: hidden;
}

.lead-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: grid;
  place-items: center;
  padding: 24px;
}

.lead-modal[hidden] {
  display: none;
}

.lead-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(9, 62, 45, 0.52);
  backdrop-filter: blur(6px);
}

.lead-modal-card {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(520px, 100%);
  gap: 16px;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(9, 62, 45, 0.28);
}

.lead-modal-card h2 {
  margin: 0 0 4px;
  font-size: 30px;
  line-height: 1.15;
}

.lead-modal-card label {
  display: grid;
  gap: 8px;
}

.lead-modal-card label span {
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
}

.lead-modal-card input,
.lead-modal-card select {
  width: 100%;
  height: 50px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 0 14px;
  outline: none;
}

.lead-modal-card input:focus,
.lead-modal-card select:focus {
  border-color: rgba(184, 202, 75, 0.55);
  box-shadow: 0 0 0 4px rgba(184, 202, 75, 0.08);
}

.lead-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: #f3f4f6;
  cursor: pointer;
}

.lead-form-tip {
  min-height: 22px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.section-title {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2px;
  padding: 44px 0 22px;
  text-align: center;
}

.section-title span {
  color: #28734f;
  font-size: 76px;
  font-weight: 900;
  line-height: 0.78;
}

.section-title h2 {
  margin: 0;
  font-size: 38px;
  line-height: 1;
}

.section-title p {
  margin: 4px 0 0;
  color: #093e2d;
  font-size: 16px;
}

.section-title.compact {
  padding-top: 62px;
}

.service-section {
  position: relative;
  padding-bottom: 74px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(246, 247, 248, 0.92)),
    url("/assets/hero-training.png") center / cover fixed;
}

.service-tabs {
  display: grid;
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  gap: 18px;
  width: min(1140px, calc(100% - 64px));
  margin: 0 auto;
}

.service-tabs button {
  display: grid;
  min-height: 148px;
  place-items: center;
  gap: 12px;
  border: 0;
  border-radius: 16px 16px 0 0;
  background: #b8ca4b;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
}

.service-tabs button.active {
  background: var(--blue);
}

.service-tabs button:hover {
  transform: translateY(-4px);
}

.service-tabs svg {
  width: 58px;
  height: 58px;
}

.service-panels {
  position: relative;
  z-index: 1;
  margin-top: -1px;
}

.service-panel {
  display: none;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.78fr);
  gap: 56px;
  align-items: center;
  padding: 30px;
  border-radius: 26px 26px 0 0;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--shadow);
}

.service-panel.active {
  display: grid;
}

.service-media {
  overflow: hidden;
  min-height: 420px;
  background: #f2f2f2;
}

.service-media img {
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
}

.service-copy {
  padding-right: 10px;
}

.kicker {
  margin: 0 0 10px;
  color: var(--coral);
  font-weight: 800;
}

.service-copy h3 {
  margin: 0;
  color: #b8ca4b;
  font-size: 42px;
  line-height: 1.15;
}

.service-copy p:not(.kicker) {
  margin: 18px 0 0;
  color: #093e2d;
  font-size: 18px;
}

.service-copy hr {
  height: 1px;
  margin: 30px 0;
  border: 0;
  background: #e5e7eb;
}

.service-copy h4 {
  margin: 0 0 14px;
  font-size: 22px;
}

.pill-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.pill-grid span {
  display: grid;
  min-height: 46px;
  place-items: center;
  border: 1px solid #b8ca4b;
  border-radius: 4px;
  background: #f6f5ef;
  color: var(--coral);
  font-weight: 700;
}

.college-section {
  padding-bottom: 84px;
  background: #fff;
}

.college-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
}

.college-grid article {
  background: #fff;
  text-align: center;
}

.college-grid img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.college-grid h3 {
  margin: 18px 0 0;
  color: #555;
  font-size: 20px;
  font-weight: 500;
}

.news-section {
  position: relative;
  padding: 72px 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.82)),
    url("/assets/exam-recognition.jpg") center / cover;
}

.news-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
  gap: 46px;
  align-items: center;
}

.feature-card {
  overflow: hidden;
  background: #8b8b8b;
}

.feature-card img {
  width: 100%;
  aspect-ratio: 16 / 7;
  object-fit: cover;
}

.feature-card p {
  margin: 0;
  padding: 14px 18px;
  color: #fff;
  font-weight: 700;
}

.news-card {
  min-height: 360px;
  padding: 24px 0;
}

.news-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 22px;
}

.news-tabs button {
  min-height: 46px;
  border: 0;
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
}

.news-tabs button.active {
  background: var(--coral);
  color: #fff;
}

.news-card h2 {
  margin: 0 0 20px;
  font-size: 22px;
  text-align: center;
}

.news-card ul {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.news-card li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
}

.news-card a {
  overflow: hidden;
  color: #093e2d;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.news-card a::before {
  content: "•";
  margin-right: 8px;
  color: #28734f;
}

.news-card time {
  color: #b8ca4b;
}

.about-strip {
  padding: 70px 0;
  background: #fff;
}

.about-strip-inner {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 34px 0;
}

.about-strip h2 {
  margin: 0;
  font-size: 36px;
}

.about-strip p {
  margin: 0;
  color: var(--muted);
}

.booking-section {
  min-height: 640px;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.18)),
    url("/assets/hero-training.png") center / cover;
}

.page-hero {
  padding: 72px 0 36px;
  background: linear-gradient(180deg, rgba(255, 250, 249, 0.96), rgba(255, 255, 255, 0.92)),
    url("/assets/hero-training.png") center / cover;
}

.page-hero-inner {
  max-width: 980px;
}

.page-hero h1 {
  margin: 0;
  color: var(--dark);
  font-size: 52px;
  line-height: 1.1;
}

.page-hero p:last-child {
  max-width: 760px;
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 18px;
}

.content-section,
.listing-section,
.related-section {
  padding: 34px 0 72px;
  background: #fff;
}

.content-panel,
.listing-layout,
.related-inner {
  display: grid;
  gap: 22px;
}

.content-panel {
  max-width: 980px;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--shadow);
}

.page-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.listing-layout {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.listing-card {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(9, 62, 45, 0.05);
}

.listing-card time {
  color: var(--coral);
  font-size: 14px;
}

.listing-card h2 {
  margin: 10px 0 12px;
  font-size: 24px;
  line-height: 1.25;
}

.listing-card p {
  margin: 0;
  color: var(--muted);
}

.related-inner h2 {
  margin: 0;
  font-size: 28px;
}

.related-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.related-links a {
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.related-links a:hover,
.related-links a:focus-visible {
  border-color: rgba(184, 202, 75, 0.28);
  color: var(--coral);
  outline: none;
}

.query-section {
  padding: 42px 0 78px;
  background: #fff;
}

.query-card {
  display: grid;
  gap: 22px;
  max-width: 1080px;
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--shadow);
}

.query-card h2 {
  margin: 0;
  font-size: 34px;
}

.query-card p {
  margin: 8px 0 0;
  color: var(--muted);
}

/* Site search entry and results */
.site-search-link { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); }
.site-search-link:hover, .site-search-link:focus-visible { border-color: var(--coral); color: var(--coral); outline: none; }
.site-search-link svg { width: 20px; height: 20px; }
.site-search-link span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.search-head { padding: 52px 0 58px; background: #f7f8fa; border-bottom: 1px solid var(--line); }
.search-head-inner { max-width: 920px; }
.search-breadcrumb { display: flex; align-items: center; gap: 7px; margin-bottom: 28px; color: var(--muted); font-size: 14px; }
.search-breadcrumb a:hover { color: var(--coral); }
.search-breadcrumb svg { width: 15px; height: 15px; }
.search-head .kicker { margin-bottom: 8px; color: var(--coral); font-weight: 800; }
.search-head h1 { margin: 0 0 26px; font-size: clamp(30px, 4vw, 46px); line-height: 1.2; letter-spacing: 0; }
.search-form { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 12px; min-height: 66px; padding: 8px 8px 8px 20px; border: 2px solid transparent; border-radius: 8px; background: #fff; box-shadow: 0 14px 36px rgba(9, 62, 45, .09); }
.search-form:focus-within { border-color: var(--coral); }
.search-form > svg { color: var(--muted); }
.search-form input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 17px; }
.search-form button { display: flex; min-height: 48px; align-items: center; gap: 8px; padding: 0 24px; border: 0; border-radius: 6px; background: var(--coral); color: #fff; font-weight: 800; cursor: pointer; }
.search-form button svg { width: 18px; height: 18px; }
.search-suggestions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; color: var(--muted); font-size: 14px; }
.search-suggestions button { padding: 5px 10px; border: 1px solid #dfe2e7; border-radius: 6px; background: #fff; color: #155d43; cursor: pointer; }
.search-suggestions button:hover { border-color: var(--coral); color: var(--coral); }
.search-content { padding: 42px 0 80px; }
.search-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 44px; align-items: start; }
.search-filter { position: sticky; top: 120px; }
.search-filter h2 { margin: 0 0 14px; font-size: 16px; }
.search-filter [data-search-filters] { display: grid; }
.search-filter button { display: flex; justify-content: space-between; align-items: center; min-height: 44px; padding: 0 12px; border: 0; border-left: 3px solid transparent; background: transparent; color: #28734f; text-align: left; cursor: pointer; }
.search-filter button b { font-size: 12px; font-weight: 600; color: #b8ca4b; }
.search-filter button:hover, .search-filter button.is-active { border-left-color: var(--coral); background: #f7f8fa; color: var(--coral); }
.search-results-head { display: flex; justify-content: space-between; align-items: center; gap: 24px; min-height: 60px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.search-results-head p { margin: 0 0 5px; color: #155d43; }
.search-results-head p strong { color: var(--coral); }
.search-results-head [data-search-hint] { color: var(--muted); font-size: 13px; }
.search-sort { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; white-space: nowrap; }
.search-sort select { height: 36px; padding: 0 30px 0 10px; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.search-result-item { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 18px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.search-result-icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 7px; background: #f6f5ef; color: var(--coral); }
.search-result-icon svg { width: 22px; }
.search-result-category { color: var(--coral); font-size: 13px; font-weight: 700; }
.search-result-item h2 { margin: 5px 0 8px; font-size: 21px; line-height: 1.35; letter-spacing: 0; }
.search-result-item h2 a:hover { color: var(--coral); }
.search-result-item p { max-width: 720px; margin: 0 0 10px; color: var(--muted); line-height: 1.75; }
.search-result-item mark { padding: 0 2px; background: #d5e2cf; color: inherit; }
.search-result-link { display: inline-flex; align-items: center; gap: 5px; color: #155d43; font-size: 13px; font-weight: 700; }
.search-result-link:hover { color: var(--coral); }
.search-result-link svg { width: 15px; height: 15px; }
.search-empty { padding: 72px 20px; text-align: center; color: var(--muted); }
.search-empty > svg { width: 44px; height: 44px; color: #b8ca4b; }
.search-empty h2 { margin: 16px 0 8px; color: var(--ink); font-size: 22px; }
.search-empty a { display: inline-flex; align-items: center; gap: 6px; margin-top: 14px; color: var(--coral); font-weight: 700; }
.search-empty a svg { width: 16px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

@media (max-width: 980px) {
  .site-search-link { order: 2; margin-left: 0; }
  .menu-toggle { order: 3; margin-left: 0; }
  .site-nav { order: 4; }
  .search-layout { grid-template-columns: 1fr; gap: 24px; }
  .search-filter { position: static; overflow-x: auto; }
  .search-filter h2 { display: none; }
  .search-filter [data-search-filters] { display: flex; min-width: max-content; gap: 6px; }
  .search-filter button { min-height: 38px; border: 1px solid var(--line); border-radius: 6px; gap: 9px; }
  .search-filter button:hover, .search-filter button.is-active { border-color: var(--coral); }
}

@media (max-width: 600px) {
  .search-head { padding: 30px 0 34px; }
  .search-breadcrumb { margin-bottom: 20px; }
  .search-head h1 { margin-bottom: 20px; font-size: 29px; }
  .search-form { grid-template-columns: 20px 1fr auto; min-height: 58px; padding-left: 14px; gap: 8px; }
  .search-form button { min-height: 42px; padding: 0 14px; }
  .search-form button span { display: none; }
  .search-content { padding: 26px 0 56px; }
  .search-results-head { align-items: flex-start; }
  .search-sort { display: none; }
  .search-result-item { grid-template-columns: 38px minmax(0, 1fr); gap: 12px; padding: 23px 0; }
  .search-result-icon { width: 38px; height: 38px; }
  .search-result-icon svg { width: 19px; }
  .search-result-item h2 { font-size: 18px; }
}

.query-card--official {
  gap: 24px;
}

.official-query-actions {
  display: grid;
  gap: 12px;
  justify-items: start;
}

.official-query-note {
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  color: var(--muted);
}

.official-query-frame-wrap {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.official-query-frame {
  display: block;
  width: 100%;
  min-height: 920px;
  border: 0;
  background: #fff;
}

.query-form {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(220px, .8fr) minmax(180px, .6fr) auto;
  gap: 12px;
}

.query-form input {
  min-height: 52px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0 18px;
  outline: none;
}

.query-form input:focus {
  border-color: rgba(184, 202, 75, 0.55);
  box-shadow: 0 0 0 4px rgba(184, 202, 75, 0.08);
}

.query-meta {
  margin: -6px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.query-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.query-item {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
}

.query-item h3 {
  margin: 0 0 12px;
  font-size: 22px;
}

.query-item dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.query-item div {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 8px;
}

.query-item dt {
  color: var(--muted);
  font-size: 13px;
}

.query-item dd {
  margin: 0;
  font-weight: 700;
}

.query-empty {
  margin: 0;
  padding: 18px;
  border-radius: 14px;
  background: var(--coral-soft);
  color: var(--coral-deep);
  font-weight: 800;
}

.booking-overlay {
  display: grid;
  min-height: 640px;
  place-items: center;
  padding: 70px 24px;
}

.booking-card {
  width: min(1120px, 100%);
  padding: 58px 50px 48px;
  background: rgba(255, 255, 255, 0.84);
  text-align: center;
  backdrop-filter: blur(10px);
}

.booking-card h2 {
  margin: 0;
  font-size: 38px;
}

.booking-card > p {
  margin: 10px 0 38px;
}

.form-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.booking-card label {
  display: grid;
  gap: 8px;
  text-align: left;
}

.booking-card label span {
  color: var(--muted);
  font-size: 14px;
}

.booking-card input,
.booking-card select,
.booking-card textarea {
  width: 100%;
  border: 0;
  background: #fff;
  color: var(--ink);
  outline: none;
}

.booking-card input,
.booking-card select {
  height: 50px;
  padding: 0 14px;
}

.booking-card textarea {
  min-height: 120px;
  padding: 14px;
  resize: vertical;
}

.message-field {
  margin-top: 20px;
}

.submit-btn {
  width: min(200px, 100%);
  margin-top: 20px;
}

.form-tip {
  min-height: 22px;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.branch-section {
  padding: 72px 0;
  background: #fff;
}

.placeholder-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.placeholder-grid article {
  min-height: 220px;
  padding: 28px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 12px 30px rgba(9, 62, 45, 0.05);
}

.placeholder-grid h2 {
  margin: 0 0 12px;
}

.placeholder-grid p {
  color: var(--muted);
}

.site-footer {
  background: #23252a;
  color: rgba(255, 255, 255, 0.86);
}

.footer-inner {
  display: grid;
  gap: 30px;
  padding: 46px 0 28px;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 16px;
}

.footer-brand .brand-logo-image {
  width: 96px;
  height: 96px;
  border-radius: 8px;
}

.footer-brand strong {
  display: block;
  font-size: 22px;
}

.footer-brand p {
  margin: 6px 0 0;
  color: rgba(255, 255, 255, 0.62);
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.footer-grid div {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-grid h3 {
  margin: 0 0 14px;
}

.footer-grid a,
.footer-grid p {
  display: block;
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.68);
}

.copyright {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

@keyframes heroFade {
  0%,
  28% {
    opacity: 1;
  }
  34%,
  100% {
    opacity: 0;
  }
}

@media (max-width: 1280px) {
  .container {
    width: min(var(--max), calc(100% - 48px));
  }

  .nav-item > a {
    padding: 0 8px;
    font-size: 14px;
  }

  .service-tabs {
    grid-template-columns: repeat(4, minmax(120px, 1fr));
  }

  .college-grid,
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .topbar-inner {
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 8px 0;
  }

  .topbar-inner span:nth-child(2),
  .topbar-inner a {
    justify-self: start;
    text-align: left;
  }

  .nav-inner {
    min-height: 82px;
  }

  .brand-logo-image {
    width: 72px;
    height: 72px;
  }

  .menu-toggle {
    display: grid;
  }

  .site-nav {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    display: none;
    width: min(360px, calc(100vw - 48px));
    flex-direction: column;
    align-items: stretch;
    padding: 10px;
    background: #fff;
    box-shadow: var(--shadow);
  }

  .site-nav.open {
    display: flex;
  }

  .nav-item > a {
    min-height: 46px;
    justify-content: start;
    padding: 0 14px;
  }

  .dropdown {
    position: static;
    display: none;
    min-width: 0;
    opacity: 1;
    transform: none;
    visibility: visible;
  }

  .dropdown::before {
    display: none;
  }

  .has-menu:hover .dropdown,
  .has-menu:focus-within .dropdown,
  .has-menu.expanded .dropdown {
    display: grid;
    transform: none;
  }

  .mega-menu {
    position: static;
    display: none;
    width: 100%;
    padding-top: 0;
    opacity: 1;
    transform: none;
    visibility: visible;
  }

  .mega-menu::before {
    display: none;
  }

  .has-mega:hover .mega-menu,
  .has-mega:focus-within .mega-menu,
  .has-mega.expanded .mega-menu {
    display: block;
    transform: none;
  }

  .mega-menu-inner {
    padding: 12px;
    border-radius: 12px;
  }

  .mega-menu-links {
    grid-template-columns: 1fr;
  }

  .hero,
  .hero-content {
    min-height: 620px;
  }

  .hero h1 {
    font-size: 46px;
  }

  .service-panel,
  .news-layout,
  .about-strip-inner,
  .form-row {
    grid-template-columns: 1fr;
  }

  .service-panel {
    gap: 28px;
  }

  .pill-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .listing-layout,
  .related-links,
  .query-list,
  .query-form {
    grid-template-columns: 1fr;
  }

  .page-hero h1 {
    font-size: 36px;
  }
}

@media (max-width: 720px) {
  .container {
    width: min(var(--max), calc(100% - 28px));
  }

  section[id],
  footer[id] {
    scroll-margin-top: 116px;
  }

  .topbar {
    font-size: 12px;
  }

  .topbar-inner {
    min-height: 0;
    gap: 2px;
    padding: 6px 0;
  }

  .topbar-inner span:first-child {
    display: none;
  }

  .topbar-inner a {
    gap: 7px;
    font-size: 15px;
    font-weight: 900;
  }

  .topbar-inner svg {
    width: 18px;
    height: 18px;
  }

  .nav-inner {
    min-height: 78px;
    gap: 12px;
  }

  .brand-copy small {
    display: none;
  }

  .brand-logo-image {
    width: 64px;
    height: 64px;
    border-radius: 6px;
  }

  .brand {
    gap: 12px;
    min-width: 0;
  }

  .brand-copy strong {
    font-size: 21px;
    line-height: 1.1;
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
    border-radius: 12px;
  }

  .site-nav {
    top: calc(100% + 6px);
    right: 14px;
    width: calc(100vw - 28px);
    max-height: calc(100vh - 126px);
    overflow-y: auto;
    border: 1px solid rgba(9, 62, 45, 0.08);
    border-radius: 18px;
    box-shadow: 0 18px 46px rgba(9, 62, 45, 0.16);
  }

  .hero,
  .hero-content {
    min-height: 560px;
  }

  .hero h1 {
    font-size: 34px;
  }

  .hero p:not(.hero-eyebrow) {
    font-size: 17px;
  }

  .hero-actions {
    flex-direction: column;
    width: 100%;
  }

  .btn {
    width: 100%;
  }

  .hero-arrow {
    display: none;
  }

  .float-tools {
    display: none;
  }

  .contact-widget {
    top: auto;
    right: 14px;
    bottom: 14px;
    grid-template-columns: repeat(3, 46px);
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(9, 62, 45, 0.22);
  }

  .contact-widget button,
  .contact-widget a,
  .contact-widget button:hover,
  .contact-widget button:focus-visible,
  .contact-widget a:hover,
  .contact-widget a:focus-visible {
    width: 46px;
    min-height: 46px;
    padding: 0;
  }

  .contact-widget svg {
    width: 21px;
    height: 21px;
  }

  .contact-widget span {
    position: absolute;
  }

  .section-title span {
    font-size: 56px;
  }

  .section-title h2 {
    font-size: 28px;
  }

  .service-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(100% - 28px, 520px);
    gap: 10px;
  }

  .service-tabs button {
    min-height: 112px;
    border-radius: 12px;
  }

  .service-tabs svg {
    width: 42px;
    height: 42px;
  }

  .service-panel {
    padding: 18px;
    border-radius: 18px;
  }

  .service-media,
  .service-media img {
    min-height: 260px;
  }

  .service-copy h3 {
    font-size: 30px;
  }

  .college-grid,
  .placeholder-grid,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .news-card li {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .booking-card {
    padding: 32px 18px;
  }

  .booking-card h2 {
    font-size: 28px;
  }

  .lead-modal {
    padding: 14px;
  }

  .lead-modal-card,
  .query-card {
    padding: 22px;
  }

  .official-query-frame {
    min-height: 780px;
  }
}
.org-redesign{--og: #155d43;--od: #093e2d;--oo: #e77935;--ol: #28734f;--op: #f6f5ef;color: #093e2d;background: #fff}
.org-hero{background: var(--od);color: #fff;padding:110px 0 120px;position:relative;overflow:hidden}.org-hero:after{content:"";position:absolute;right:-120px;top:-180px;width:520px;height:520px;border: 1px solid rgba(40, 115, 79, .3);border-radius: 50%}.org-hero-inner{display:grid;grid-template-columns:1fr 260px;gap:70px;align-items:end;position:relative;z-index:1}.org-kicker,.org-section-head>p{color: var(--ol);font-size:12px;font-weight:900;letter-spacing:.12em}.org-hero h1{margin:20px 0 22px;color: #fff;font-size:clamp(48px,7vw,88px);line-height:1.06}.org-hero h1 span{color: var(--ol)}.org-hero p{max-width:620px;margin:0;color: rgba(255,255,255,.72);font-size:18px;line-height:1.85}.org-hero-mark{display:flex;flex-direction:column;border-left: 1px solid rgba(255,255,255,.3);padding-left:28px}.org-hero-mark span{color: var(--oo);font-size:60px;font-weight:950}.org-hero-mark strong{font-size:22px}.org-hero-mark small{margin-top:8px;color: rgba(255,255,255,.6)}.org-map,.org-functions,.org-chart,.org-cta{padding:100px 0}.org-map{background: #fff}.org-section-head{max-width:720px;margin-bottom:42px}.org-section-head>p{color: var(--oo);margin-bottom:14px}.org-section-head h2{margin:0;color: var(--od);font-size:clamp(34px,4vw,56px)}.org-section-head>span{display:block;margin-top:14px;color: #28734f;line-height:1.8}.org-lead-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top: 1px solid #d6ded6}.org-lead-grid article{padding:24px 24px 30px;border-right: 1px solid #d6ded6}.org-lead-grid article:last-child{border-right: 0}.org-lead-grid img{width:100%;height:310px;object-fit:cover;object-position:top}.org-lead-grid small{display:block;margin-top:20px;color: var(--oo);font-weight:900;letter-spacing:.08em}.org-lead-grid h3{margin:8px 0;color: var(--od);font-size:30px}.org-lead-grid p{margin:0;color: #28734f}.org-functions{background: var(--op)}.org-function-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.org-function-grid article{background: #fff;border-top: 3px solid var(--og);padding:12px}.org-function-grid article:nth-child(2n){border-top-color: var(--oo)}.org-function-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}.org-function-grid b,.org-function-grid strong{display:block}.org-function-grid b{margin-top:14px;color: #28734f;font-size:12px}.org-function-grid strong{margin-top:4px;color: var(--od);font-size:21px}.org-chart{background: #fff}.org-chart figure{margin:0;padding:20px;border: 1px solid #edf2e8;background: var(--op)}.org-chart img{display:block;width:100%;height:auto}.org-cta{background: var(--og);text-align:center}.org-cta p{margin:0 0 20px;color: rgba(255,255,255,.78);font-size:18px}.org-button{padding:14px 28px;border: 0;border-radius: 4px;background: var(--oo);color: #fff;font-weight:900;cursor:pointer}@media(max-width:800px){.org-hero-inner,.org-lead-grid{grid-template-columns:1fr}.org-hero{padding:72px 0 80px}.org-hero-mark{margin-top:20px}.org-lead-grid article{border-right: 0;border-bottom: 1px solid #d6ded6}.org-function-grid{grid-template-columns:repeat(2,1fr)}.org-map,.org-functions,.org-chart,.org-cta{padding:70px 0}}

/* Homepage brand refinement: logo green leads, orange and chartreuse accent. */
.home-page {
  --home-green: #155d43;
  --home-green-deep: #093e2d;
  --home-orange: #e77935;
  --home-lime: #28734f;
  --home-paper: #f8f7f1;
}
.home-hero { min-height: 680px; background: #093e2d; }
.home-hero-bg::after {
  background: linear-gradient(90deg, rgba(9, 62, 45, .94) 0%, rgba(9, 62, 45, .78) 43%, rgba(9, 62, 45, .2) 100%);
}
.home-eyebrow, .home-kicker { color: var(--home-lime); }
.home-hero h1 { letter-spacing: -.025em; }
.home-hero-card { border-radius: 12px; border-color: rgba(40, 115, 79, .45); background: rgba(9, 62, 45, .82); backdrop-filter: blur(10px); }
.home-fast-links button { border-radius: 5px; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.08); }
.home-fast-links button:hover { border-color: var(--home-lime); color: var(--home-lime); }
.home-phone { color: #fff; }
.home-phone svg { color: var(--home-orange); }
.home-feature-strip { background: var(--home-paper); border-block: 1px solid #edf2e8; }
.home-feature-grid article { border-left: 3px solid var(--home-green); background: transparent; box-shadow: none; border-radius: 0; }
.home-feature-grid article:nth-child(2) { border-left-color: var(--home-orange); }
.home-feature-grid article:nth-child(3) { border-left-color: var(--home-lime); }
.home-feature-grid article:nth-child(4) { border-left-color: var(--home-green-deep); }
.home-feature-grid article > svg { color: var(--home-green); }
.home-section-title p, .home-section-title h2, .home-kicker { color: var(--home-green); }
.home-section-title h2 { letter-spacing: -.02em; }
.home-course-card { border-radius: 8px; border-color: #edf2e8; box-shadow: 0 12px 30px rgba(9, 62, 45, .07); }
.home-course-card:hover { border-color: var(--home-green); box-shadow: 0 18px 34px rgba(9, 62, 45, .14); }
.home-course-card small { color: var(--home-orange); }
.home-about { background: var(--home-paper); }
.home-about-main { border-radius: 8px; }
.home-metrics strong { color: var(--home-green); }
.home-service-grid a { border-radius: 6px; }
.home-service-grid a::after { background: linear-gradient(180deg, transparent 30%, rgba(9, 62, 45, .9)); }
.home-process { background: var(--home-green-deep); }
.home-process h2, .home-process p { color: #fff; }
.home-steps li { border-left-color: var(--home-lime); }
.home-steps li span { color: var(--home-lime); }
.home-honor { background: #fff; }
.home-honor-list span { border-color: #edf2e8; background: #f7faf3; color: var(--home-green-deep); }
.home-honor img { border-radius: 8px; }
.home-news-cta { background: var(--home-paper); }
.childcare-video-section { background: #f8f7f1; }
.childcare-video-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 48px; align-items: center; }
.childcare-video-card { margin: 0; border: 1px solid #edf2e8; background: #fff; box-shadow: 0 18px 42px rgba(9, 62, 45, .1); }
.childcare-video-card video { display: block; width: 100%; aspect-ratio: 16/9; object-fit: cover; background: #093e2d; }
.childcare-video-card figcaption { padding: 14px 18px 16px; color: #155d43; font-weight: 800; }
@media (max-width: 720px) { .childcare-video-layout { grid-template-columns: 1fr; gap: 24px; } }
.eldercare-detail { --elder-green: #155d43; --elder-deep: #093e2d; --elder-orange: #e77935; --elder-lime: #28734f; }
.eldercare-hero-clean { position: relative; overflow: hidden; background: #f8f7f1; border-bottom: 1px solid #edf2e8; }
.eldercare-hero-clean::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 6px; background: linear-gradient(#155d43 0 62%,#e77935 62% 82%,#28734f 82%); }
.eldercare-hero-clean img { border-radius: 4px !important; }
.eldercare-hero-clean > .container > .grid > div:last-child { padding: 0 !important; border: 0 !important; border-radius: 4px !important; box-shadow: 18px 18px 0 #edf2e8 !important; }
.eldercare-tabs-clean { border-bottom: 1px solid #edf2e8; background: rgba(255,255,255,.96); box-shadow: none; backdrop-filter: blur(12px); }
.eldercare-detail .text-orange-600 { color: var(--elder-green) !important; }
.eldercare-detail .bg-orange-500 { background-color: var(--elder-green) !important; }
.eldercare-detail .border-orange-600 { border-color: var(--elder-green) !important; }
.eldercare-detail .border-orange-100, .eldercare-detail .border-orange-300 { border-color: #edf2e8 !important; }
.eldercare-detail .bg-orange-50 { background-color: #edf2e8 !important; }
.eldercare-detail .from-orange-50, .eldercare-detail .to-orange-50 { --tw-gradient-from: #f8f7f1 !important; --tw-gradient-to: #edf2e8 !important; }
.eldercare-detail .rounded-2xl, .eldercare-detail .rounded-\[2rem\], .eldercare-detail .rounded-\[1\.5rem\] { border-radius: 8px !important; }
.eldercare-detail article { box-shadow: none !important; }
.eldercare-detail #section-1 article { border-top: 3px solid var(--elder-green); }
.eldercare-detail #section-1 article:nth-child(2) { border-top-color: var(--elder-orange); }
.eldercare-detail #section-1 article:nth-child(3) { border-top-color: var(--elder-lime); }
.eldercare-detail #section-2 { background: #f8f7f1 !important; }
.eldercare-detail #section-2 article { border-left: 3px solid var(--elder-green); }
.eldercare-detail #section-3 > .container > .mt-10 { padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.eldercare-detail #section-3 .relative.grid { gap: 0 !important; border-top: 1px solid #edf2e8; }
.eldercare-detail #section-3 article { border-width: 0 0 1px !important; border-color: #edf2e8 !important; border-radius: 0 !important; }
.eldercare-detail #section-3 > .container > .mt-8 { border-radius: 4px !important; background: var(--elder-green) !important; box-shadow: none !important; }
.eldercare-video-section { background: #093e2d; color: #fff; }
.eldercare-video-heading { max-width: 760px; margin-bottom: 34px; }
.eldercare-video-heading span { color: #28734f; font-size: 13px; font-weight: 900; letter-spacing: .08em; }
.eldercare-video-heading h2 { margin: 10px 0 12px; color: #fff; font-size: clamp(30px,4vw,46px); }
.eldercare-video-heading p { margin: 0; color: rgba(255,255,255,.76); line-height: 1.8; }
.eldercare-video-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.eldercare-video-grid figure { margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.16); background: #fff; }
.eldercare-video-grid video { display: block; width: 100%; aspect-ratio: 16/9; object-fit: cover; background: #093e2d; }
.eldercare-video-grid figcaption { display: flex; justify-content: space-between; gap: 18px; padding: 16px 18px; color: #093e2d; }
.eldercare-video-grid figcaption span { color: #28734f; font-size: 14px; }
@media (max-width: 720px) { .eldercare-video-grid { grid-template-columns: 1fr; } .eldercare-video-grid figcaption { flex-direction: column; gap: 4px; } }
.eldercare-detail > .eldercare-redesign ~ * { display: none !important; }
.eldercare-redesign { --ec-green: #155d43; --ec-deep: #093e2d; --ec-orange: #e77935; --ec-lime: #28734f; --ec-paper: #f6f5ef; color: #093e2d; }
.hk-redesign { --ec-green: #155d43; --ec-deep: #093e2d; --ec-orange: #e77935; --ec-lime: #28734f; --ec-paper: #f6f5ef; color: #093e2d; }
.hk-redesign .ec-hero-image { object-position:center 52%; }
.hk-redesign .ec-hero-shade { background: linear-gradient(90deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .72) 44%,rgba(9, 62, 45, .12)); }
.ec-hero { position:relative; min-height:720px; overflow:hidden; background: #093e2d; color: #fff; }
.ec-hero-image,.ec-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
.ec-hero-image { object-fit:cover; object-position:center 46%; }
.ec-hero-shade { background: linear-gradient(90deg,rgba(9, 62, 45, .97) 0%,rgba(9, 62, 45, .84) 38%,rgba(9, 62, 45, .28) 66%,rgba(9, 62, 45, .08) 100%); }
.ec-hero-content { position:relative; z-index:1; display:flex; min-height:720px; flex-direction:column; justify-content:center; padding-block:76px; }
.ec-label,.ec-index { margin:0 0 18px; color: var(--ec-lime); font-size:13px; font-weight:900; letter-spacing:.08em; }
.ec-hero h1 { max-width:760px; margin:0; color: #fff; font-size:clamp(54px,7vw,90px); line-height:1.03; letter-spacing:0; }
.ec-lead { max-width:650px; margin:24px 0 0; color: rgba(255,255,255,.82); font-size:19px; line-height:1.8; }
.ec-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.ec-btn { display:inline-flex; min-height:50px; align-items:center; justify-content:center; padding:0 24px; border: 1px solid transparent; border-radius: 4px; font-weight:900; cursor:pointer; }
.ec-btn-primary { background: var(--ec-orange); color: #fff; }
.ec-btn-ghost { border-color: rgba(255,255,255,.48); color: #fff; background: rgba(255,255,255,.06); }
.ec-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:800px; margin:48px 0 0; border-top: 1px solid rgba(255,255,255,.28); }
.ec-facts div { padding:18px 26px 0 0; }
.ec-facts dt { color: rgba(255,255,255,.58); font-size:12px; }
.ec-facts dd { margin:6px 0 0; color: #fff; font-weight:800; }
.ec-intro,.ec-skills,.ec-classroom,.ec-path,.ec-cta { padding:clamp(68px,8vw,112px) 0; }
.ec-intro { background: #fff; }
.ec-intro-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(40px,8vw,110px); align-items:end; }
.ec-intro h2,.ec-section-head h2,.ec-cta h2 { margin:0; color: var(--ec-deep); font-size:clamp(34px,4.5vw,58px); line-height:1.14; letter-spacing:0; }
.ec-intro-grid > p,.ec-section-head > p:last-child { margin:0; color: #28734f; font-size:17px; line-height:1.9; }
.ec-index { color: var(--ec-orange); }
.ec-skills { background: var(--ec-paper); }
.ec-section-head { max-width:760px; margin-bottom:42px; }
.ec-skill-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top: 1px solid #d5e2cf; }
.ec-skill-grid article { min-height:280px; padding:30px 34px; border-right: 1px solid #d5e2cf; background: transparent; }
.ec-skill-grid article:last-child { border-right: 0; }
.ec-skill-grid span { color: var(--ec-lime); font-size:34px; font-weight:950; }
.ec-skill-grid h3 { margin:54px 0 12px; color: var(--ec-deep); font-size:27px; }
.ec-skill-grid p { margin:0; color: #28734f; line-height:1.8; }
.ec-classroom { background: var(--ec-deep); }
.ec-section-head-light h2 { color: #fff; }
.ec-section-head-light > p:last-child { margin-top:14px; color: rgba(255,255,255,.66); }
.ec-media-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.ec-media-grid figure { margin:0; background: #fff; }
.ec-media-grid video { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; background: #093e2d; }
.ec-media-grid figcaption { display:flex; justify-content:space-between; gap:20px; padding:18px 20px; }
.ec-media-grid figcaption span { color: var(--ec-orange); font-size:13px; font-weight:900; }
.ec-media-grid figcaption strong { color: var(--ec-deep); }
.ec-path { background: #fff; }
.ec-path-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(44px,8vw,110px); }
.ec-path ol { margin:0; padding:0; list-style:none; border-top: 1px solid #d7ddd7; }
.ec-path li { display:grid; grid-template-columns:72px 1fr; gap:22px; padding:24px 0; border-bottom: 1px solid #d7ddd7; }
.ec-path li > span { color: var(--ec-lime); font-size:25px; font-weight:950; }
.ec-path li strong { color: var(--ec-deep); font-size:20px; }
.ec-path li p { margin:7px 0 0; color: #69716d; }
.ec-cta { background: var(--ec-paper); text-align:center; }
.ec-cta p { margin:0 0 10px; color: var(--ec-green); font-weight:800; }
.ec-cta h2 { margin-bottom:28px; }
@media (max-width:800px) {
  .ec-hero,.ec-hero-content { min-height:650px; }
  .ec-hero-image { object-position:58% center; }
  .ec-hero-shade { background: linear-gradient(180deg,rgba(9, 62, 45, .48),rgba(9, 62, 45, .96) 72%); }
  .ec-hero h1 { font-size:44px; }
  .ec-facts,.ec-skill-grid,.ec-media-grid,.ec-intro-grid,.ec-path-grid { grid-template-columns:1fr; }
  .ec-facts { gap:0; }
  .ec-skill-grid article { min-height:0; border-right: 0; border-bottom: 1px solid #d5e2cf; }
  .ec-skill-grid h3 { margin-top:24px; }
  .ec-media-grid figcaption { flex-direction:column; gap:5px; }
}
@media (max-width: 720px) {
  .home-hero-bg::after { background: linear-gradient(180deg, rgba(9, 62, 45, .76), rgba(9, 62, 45, .95)); }
  .home-hero-card { border-radius: 10px; }
}

/* Development history: documentary exhibition layout */
.history-page { background: #edf2e8; color: #211c19; }
.history-hero { min-height: 760px; padding-bottom: 80px; }
.history-hero::after { content: "2019 — 2026"; position: absolute; right: 3vw; top: 160px; writing-mode: vertical-rl; color: rgba(9, 62, 45, .12); font: 900 14px/1 sans-serif; letter-spacing: .28em; }
.history-eyebrow { margin: 0 0 24px; color: #28734f; font-size: 13px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.history-title { margin: 0; color: #201b18; font-size: clamp(58px, 8vw, 108px); font-weight: 950; line-height: .9; letter-spacing: 0; }
.history-title span { color: #28734f; }
.history-lead { margin: 32px auto 0; color: #155d43; font-size: 19px; font-weight: 800; line-height: 1.8; }
.history-scroll-cue { display: grid; width: 48px; height: 48px; margin: 32px auto 72px; place-items: center; border: 1px solid rgba(33, 28, 25, .22); border-radius: 50%; color: #28734f; transition: transform .2s, background .2s, color .2s; }
.history-scroll-cue:hover { transform: translateY(4px); background: #28734f; color: #fff; }
.history-scroll-cue svg { width: 19px; }
.history-timeline-list { position: relative; display: grid; gap: 100px; margin: 0; padding: 0; list-style: none; }
.history-entry { position: relative; padding-left: 56px; transition: opacity .7s, transform .7s; }
.history-entry.is-visible { opacity: 1; transform: translateY(0); }
.history-dot { position: absolute; left: 10px; top: 56px; z-index: 3; width: 21px; height: 21px; border: 5px solid #edf2e8; border-radius: 50%; background: #28734f; box-shadow: 0 0 0 1px #28734f; }
.history-story { overflow: hidden; border-top: 5px solid #211c19; background: #fff; box-shadow: 0 28px 70px rgba(9, 62, 45, .11); }
.history-copy { position: relative; padding: 42px 44px 38px; }
.history-year { margin: 0; color: #28734f; font: 950 clamp(54px, 8vw, 92px)/.85 Arial, sans-serif; letter-spacing: 0; }
.history-index { position: absolute; right: 44px; top: 42px; margin: 0; color: #e77935; font: 900 12px/1 Arial, sans-serif; letter-spacing: .14em; }
.history-copy h2 { margin: 28px 0 16px; color: #211c19; font-size: clamp(24px, 3vw, 34px); font-weight: 950; letter-spacing: 0; }
.history-description { max-width: 900px; margin: 0; color: #e77935; font-size: 17px; line-height: 2; }
.history-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 4px; background: #211c19; }
.history-gallery-3 .history-photo:first-child { grid-row: span 2; }
.history-photo { position: relative; min-height: 230px; overflow: hidden; border: 0; background: #edf2e8; cursor: zoom-in; }
.history-photo img { width: 100%; height: 100%; min-height: 230px; object-fit: contain; transition: transform .55s ease, filter .55s ease; }
.history-photo:hover img { transform: scale(1.045); filter: saturate(1.08); }
.history-photo span { position: absolute; right: 14px; bottom: 14px; display: grid; width: 42px; height: 42px; place-items: center; background: rgba(20, 17, 15, .78); color: #fff; opacity: 0; transition: opacity .2s; }
.history-photo:hover span { opacity: 1; }
.history-photo svg { width: 18px; }
.history-lightbox-open { overflow: hidden; }
.history-lightbox { position: fixed; inset: 0; z-index: 10000; display: grid; padding: 28px; place-items: center; background: rgba(15, 12, 10, .94); }
.history-lightbox[hidden] { display: none; }
.history-lightbox figure { width: min(1180px, 100%); margin: 0; text-align: center; }
.history-lightbox img { width: 100%; max-height: calc(100vh - 120px); object-fit: contain; }
.history-lightbox figcaption { margin-top: 14px; color: rgba(255,255,255,.82); font-weight: 800; }
.history-lightbox > button { position: fixed; right: 22px; top: 22px; z-index: 2; display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid rgba(255,255,255,.24); border-radius: 0; background: rgba(255,255,255,.08); color: #fff; cursor: pointer; }

@media (min-width: 768px) {
  .history-entry { padding-left: 0; }
  .history-entry:nth-child(odd) .history-story { margin-right: 7%; }
  .history-entry:nth-child(even) .history-story { margin-left: 7%; }
  .history-dot { left: 50%; margin-left: -10px; }
  .history-story { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(430px, 1.22fr); }
  .history-copy { padding: 44px 38px; }
  .history-description { font-size: 16px; line-height: 1.9; }
  .history-photo, .history-photo img { min-height: 220px; }
}

@media (max-width: 767px) {
  .history-hero { min-height: auto; padding-top: 68px; }
  .history-hero::after { display: none; }
  .history-title { font-size: 54px; }
  .history-lead { font-size: 16px; }
  .history-scroll-cue { margin-bottom: 42px; }
  .history-timeline-list { gap: 58px; }
  .history-copy { padding: 30px 24px 28px; }
  .history-index { right: 24px; top: 30px; }
  .history-description { font-size: 15px; line-height: 1.85; }
  .history-gallery { grid-template-columns: 1fr; }
  .history-gallery-3 .history-photo:first-child { grid-row: auto; }
  .history-photo, .history-photo img { min-height: 210px; }
}

/* Jiaxing global brand colors */


.topbar { background: var(--jx-green-deep); }
.topbar-inner a:hover { color: #d5e2cf; }
.site-nav > .nav-item > a:hover,
.site-nav > .nav-item:focus-within > a { color: var(--jx-green); }
.mega-menu-heading strong { color: var(--jx-green-deep); }
.mega-menu-links a:hover { color: var(--jx-green); background: #f0f8f2; }
.btn.primary { background: var(--jx-green); border-color: var(--jx-green); }
.btn.primary:hover { background: var(--jx-green-deep); border-color: var(--jx-green-deep); }
.contact-widget button,
.contact-widget a { background: var(--jx-green-deep); }
.contact-widget button:hover,
.contact-widget button:focus-visible,
.contact-widget a:hover,
.contact-widget a:focus-visible { background: var(--jx-orange); }
.site-footer { border-top: 5px solid var(--jx-green); }
.site-footer a:hover { color: #b8ca4b; }

/* School profile */
.about-page { background: #fff; color: var(--jx-ink); }
.about-page .about-kicker { margin: 0 0 16px; color: var(--jx-green); font-size: 12px; font-weight: 950; letter-spacing: .16em; text-transform: uppercase; }
.about-hero { position: relative; min-height: 680px; overflow: hidden; background: var(--jx-green-deep); color: #fff; }
.about-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.about-hero-shade { position: absolute; inset: 0; background: rgba(9, 62, 45, .76); }
.about-hero-inner { position: relative; z-index: 2; display: flex; min-height: 680px; flex-direction: column; justify-content: center; align-items: flex-start; padding-top: 80px; padding-bottom: 80px; }
.about-hero .about-kicker { color: #d5e2cf; }
.about-hero h1 { max-width: 880px; margin: 0; color: #fff; font-size: clamp(50px, 6vw, 86px); font-weight: 950; line-height: 1.08; letter-spacing: 0; }
.about-hero-lead { max-width: 700px; margin: 26px 0 0; color: rgba(255,255,255,.88); font-size: 20px; font-weight: 800; line-height: 1.8; }
.about-hero-actions { display: flex; gap: 16px; align-items: center; margin-top: 38px; }
.about-button { min-height: 50px; padding: 0 28px; border: 0; border-radius: 6px; font-weight: 900; cursor: pointer; }
.about-button.is-primary { background: var(--jx-orange); color: #fff; box-shadow: 0 14px 32px rgba(231, 121, 53, .28); }
.about-button.is-primary:hover { background: #e77935; }
.about-button.is-orange { background: var(--jx-orange); color: #fff; }
.about-video-button { display: inline-flex; min-height: 50px; gap: 10px; align-items: center; padding: 0 20px; border: 1px solid rgba(255,255,255,.38); border-radius: 6px; background: rgba(255,255,255,.08); color: #fff; font-weight: 900; cursor: pointer; }
.about-video-button svg { width: 19px; }
.about-hero-index { position: absolute; right: 4vw; bottom: 42px; z-index: 2; display: flex; gap: 12px; align-items: center; color: rgba(255,255,255,.72); }
.about-hero-index span { color: var(--jx-orange); font: 950 42px/1 Arial, sans-serif; }
.about-hero-index b { font-size: 13px; letter-spacing: .14em; }

.about-intro { padding: 100px 0; background: #fff; }
.about-intro-layout { display: grid; grid-template-columns: .72fr 1.18fr 1.1fr; gap: 54px; align-items: start; }
.about-intro-heading h2 { margin: 0; color: var(--jx-ink); font-size: clamp(38px, 4vw, 58px); font-weight: 950; line-height: 1.15; letter-spacing: 0; }
.about-intro-heading h2 span { color: var(--jx-orange); }
.about-intro-copy p { margin: 0 0 18px; color: #28734f; font-size: 16px; line-height: 2; }
.about-intro-copy .about-lead-copy { color: #155d43; font-size: 19px; font-weight: 750; }
.about-intro-photo { margin: 0; overflow: hidden; border-radius: 8px; background: var(--jx-green-deep); box-shadow: 0 24px 60px rgba(21, 93, 67, .15); }
.about-intro-photo img { width: 100%; height: 310px; object-fit: cover; }
.about-intro-photo figcaption { padding: 16px 18px; color: rgba(255,255,255,.82); font-size: 13px; }
.about-intro-photo figcaption span { margin-right: 12px; color: #d5e2cf; font-weight: 900; }

.about-numbers { background: var(--jx-green-deep); color: #fff; }
.about-number-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.about-number-grid > div { min-height: 190px; padding: 42px 34px; border-left: 1px solid rgba(255,255,255,.14); }
.about-number-grid > div:last-child { border-right: 1px solid rgba(255,255,255,.14); }
.about-number-grid strong { display: block; color: #fff; font: 950 54px/1 Arial, sans-serif; }
.about-number-grid small { margin-left: 5px; color: #d5e2cf; font-size: 19px; }
.about-number-grid span { display: block; margin-top: 18px; color: rgba(255,255,255,.72); font-size: 14px; }

.about-strength { padding: 100px 0; background: var(--jx-paper); }
.about-section-heading { display: flex; gap: 60px; justify-content: space-between; align-items: end; margin-bottom: 42px; }
.about-section-heading h2 { max-width: 760px; margin: 0; color: var(--jx-ink); font-size: clamp(34px, 4vw, 50px); font-weight: 950; line-height: 1.25; letter-spacing: 0; }
.about-section-heading > p { max-width: 430px; margin: 0; color: #28734f; line-height: 1.9; }
.about-section-heading > a { display: inline-flex; gap: 8px; align-items: center; color: var(--jx-green); font-weight: 900; white-space: nowrap; }
.about-section-heading > a svg { width: 18px; }
.about-strength-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items: stretch; }
.about-strength-main { position: relative; min-height: 570px; margin: 0; overflow: hidden; border-radius: 8px; }
.about-strength-main img { width: 100%; height: 100%; min-height: 570px; object-fit: cover; }
.about-strength-main figcaption { position: absolute; left: 22px; bottom: 22px; padding: 12px 16px; border-radius: 6px; background: var(--jx-green-deep); color: #fff; font-weight: 900; }
.about-capabilities { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #edf2e8; border-left: 1px solid #edf2e8; }
.about-capabilities article { padding: 30px 25px; border-right: 1px solid #edf2e8; border-bottom: 1px solid #edf2e8; background: #fff; }
.about-capabilities svg { width: 29px; height: 29px; color: var(--jx-orange); }
.about-capabilities b { display: block; margin-top: 24px; color: var(--jx-green-deep); font-size: 20px; }
.about-capabilities p { margin: 10px 0 0; color: #28734f; font-size: 14px; line-height: 1.85; }

.about-results { padding: 100px 0; background: #fff; }
.about-results-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 70px; align-items: center; }
.about-results-copy h2 { margin: 0; color: var(--jx-ink); font-size: clamp(38px, 4.6vw, 62px); font-weight: 950; line-height: 1.16; letter-spacing: 0; }
.about-results-copy > p:not(.about-kicker) { margin: 26px 0 0; color: #28734f; font-size: 17px; line-height: 1.95; }
.about-results-copy dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 34px 0 0; background: #edf2e8; }
.about-results-copy dl div { padding: 22px; background: var(--jx-paper); }
.about-results-copy dt { color: var(--jx-green); font: 950 30px/1 Arial, sans-serif; }
.about-results-copy dd { margin: 10px 0 0; color: #28734f; font-size: 13px; }
.about-results-gallery { display: grid; grid-template-columns: 1.2fr .8fr; grid-template-rows: repeat(2, 260px); gap: 8px; }
.about-results-gallery img { width: 100%; height: 100%; border-radius: 6px; object-fit: cover; }
.about-results-gallery img:first-child { grid-row: span 2; }

.about-gallery-section { padding: 100px 0; background: #eef6f0; }
.about-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.about-gallery figure { position: relative; min-height: 340px; margin: 0; overflow: hidden; border-radius: 6px; background: #edf2e8; }
.about-gallery img { width: 100%; height: 100%; min-height: 340px; object-fit: cover; transition: transform .45s ease; }
.about-gallery figure:hover img { transform: scale(1.035); }
.about-gallery figcaption { position: absolute; left: 12px; bottom: 12px; padding: 9px 12px; border-radius: 5px; background: var(--jx-green-deep); color: #fff; font-size: 13px; font-weight: 900; }

.about-commitment { padding: 80px 0; background: var(--jx-green-deep); color: #fff; }
.about-commitment-inner { display: grid; grid-template-columns: 1.15fr .85fr auto; gap: 60px; align-items: center; }
.about-commitment .about-kicker { color: #d5e2cf; }
.about-commitment h2 { margin: 0; color: #fff; font-size: clamp(32px, 4vw, 48px); font-weight: 950; line-height: 1.25; letter-spacing: 0; }
.about-commitment-inner > p { margin: 0; color: rgba(255,255,255,.74); line-height: 1.9; }

.about-modal-open { overflow: hidden; }
.about-video-modal { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 30px; background: rgba(9, 62, 45, .94); }
.about-video-modal[hidden] { display: none; }
.about-video-modal video { width: min(1100px, 100%); max-height: calc(100vh - 80px); background: #000; }
.about-video-modal button { position: fixed; top: 20px; right: 20px; display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 6px; background: var(--jx-orange); color: #fff; cursor: pointer; }

@media (max-width: 1050px) {
  .about-intro-layout { grid-template-columns: 1fr 1.3fr; }
  .about-intro-photo { grid-column: 1 / -1; }
  .about-intro-photo img { height: 430px; }
  .about-strength-layout,
  .about-results-layout { grid-template-columns: 1fr; }
  .about-strength-main { min-height: 480px; }
  .about-commitment-inner { grid-template-columns: 1fr 1fr; }
  .about-commitment-inner .about-button { justify-self: start; }
  .about-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .about-hero,
  .about-hero-inner { min-height: 600px; }
  .about-hero h1 { font-size: 42px; }
  .about-hero-lead { font-size: 16px; }
  .about-hero-actions { flex-direction: column; align-items: stretch; width: 100%; }
  .about-hero-index { display: none; }
  .about-intro,
  .about-strength,
  .about-results,
  .about-gallery-section { padding: 64px 0; }
  .about-intro-layout { grid-template-columns: 1fr; gap: 28px; }
  .about-intro-photo { grid-column: auto; }
  .about-intro-photo img { height: 260px; }
  .about-number-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-number-grid > div { min-height: 150px; padding: 30px 20px; border-bottom: 1px solid rgba(255,255,255,.14); }
  .about-number-grid strong { font-size: 42px; }
  .about-section-heading { display: block; margin-bottom: 28px; }
  .about-section-heading > p { margin-top: 16px; }
  .about-section-heading > a { margin-top: 18px; }
  .about-strength-main,
  .about-strength-main img { min-height: 330px; }
  .about-capabilities { grid-template-columns: 1fr; }
  .about-results-layout { gap: 38px; }
  .about-results-gallery { grid-template-columns: 1fr; grid-template-rows: repeat(3, 230px); }
  .about-results-gallery img:first-child { grid-row: auto; }
  .about-gallery { grid-template-columns: 1fr; }
  .about-gallery figure,
  .about-gallery img { min-height: 280px; }
  .about-commitment-inner { grid-template-columns: 1fr; gap: 24px; }
}

/* Refined school profile: logo colors as accents, photography stays natural */
.about-page {
  --about-paper: #f7f6f2;
  --about-charcoal: #20231f;
  --about-muted: #687068;
  background: var(--about-paper);
}

.about-hero {
  min-height: 700px;
  background: var(--about-charcoal);
}

.about-hero > img {
  object-position: center 48%;
  filter: none;
}

.about-hero-shade {
  background: linear-gradient(90deg, rgba(18,22,19,.88) 0%, rgba(18,22,19,.66) 43%, rgba(18,22,19,.13) 78%, rgba(18,22,19,.06) 100%);
}

.about-hero-inner {
  min-height: 700px;
}

.about-hero .about-kicker {
  color: #fff;
  opacity: .76;
}

.about-hero h1 {
  max-width: 760px;
  font-size: clamp(48px, 5.7vw, 80px);
}

.about-hero-lead {
  position: relative;
  padding-left: 64px;
  color: rgba(255,255,255,.86);
}

.about-hero-lead::before {
  content: "";
  position: absolute;
  left: 0;
  top: 17px;
  width: 44px;
  height: 3px;
  background: var(--jx-orange);
}

.about-button.is-primary {
  background: var(--jx-orange);
  box-shadow: none;
}

.about-video-button {
  background: rgba(20,22,20,.22);
  backdrop-filter: blur(8px);
}

.about-hero-index span {
  color: #fff;
}

.about-hero-index::before {
  content: "";
  width: 34px;
  height: 3px;
  background: var(--jx-orange);
}

.about-intro {
  background: var(--about-paper);
}

.about-intro-heading h2 {
  color: var(--about-charcoal);
}

.about-intro-heading h2 span {
  color: var(--jx-green);
}

.about-intro-photo {
  border-radius: 4px;
  background: var(--about-charcoal);
  box-shadow: 18px 18px 0 #edf2e8;
}

.about-intro-photo figcaption {
  background: var(--about-charcoal);
}

.about-intro-photo figcaption span {
  color: #b8ca4b;
}

.about-numbers {
  border-top: 1px solid #deddd7;
  border-bottom: 1px solid #deddd7;
  background: #fff;
  color: var(--about-charcoal);
}

.about-number-grid > div {
  min-height: 170px;
  border-left-color: #edf2e8;
}

.about-number-grid > div:last-child {
  border-right-color: #edf2e8;
}

.about-number-grid strong {
  color: var(--jx-green);
}

.about-number-grid > div:nth-child(even) strong {
  color: var(--jx-orange);
}

.about-number-grid small {
  color: inherit;
}

.about-number-grid span {
  color: var(--about-muted);
}

.about-strength {
  background: #fff;
}

.about-strength-main {
  border-radius: 4px;
}

.about-strength-main figcaption {
  background: rgba(26,29,26,.88);
  backdrop-filter: blur(6px);
}

.about-capabilities {
  border-color: #deddd6;
}

.about-capabilities article {
  border-color: #deddd6;
  background: var(--about-paper);
}

.about-capabilities b {
  color: var(--about-charcoal);
}

.about-results {
  background: var(--about-charcoal);
  color: #fff;
}

.about-results .about-kicker {
  color: #b8ca4b;
}

.about-results-copy h2 {
  color: #fff;
}

.about-results-copy > p:not(.about-kicker) {
  color: rgba(255,255,255,.68);
}

.about-results-copy dl {
  background: rgba(255,255,255,.12);
}

.about-results-copy dl div {
  background: #292d29;
}

.about-results-copy dt {
  color: #fff;
}

.about-results-copy dl div:nth-child(2) dt,
.about-results-copy dl div:nth-child(3) dt {
  color: #b8ca4b;
}

.about-results-copy dd {
  color: rgba(255,255,255,.58);
}

.about-results-gallery img {
  border-radius: 2px;
}

.about-gallery-section {
  background: var(--about-paper);
}

.about-gallery figure {
  border-radius: 3px;
  background: #edf2e8;
}

.about-gallery figcaption {
  border-radius: 2px;
  background: rgba(24,27,24,.86);
  backdrop-filter: blur(5px);
}

.about-commitment {
  position: relative;
  overflow: hidden;
  background: #fff;
  color: var(--about-charcoal);
}

.about-commitment::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 10px;
  background: linear-gradient(180deg, var(--jx-green) 0 68%, var(--jx-lime) 68% 84%, var(--jx-orange) 84%);
}

.about-commitment .about-kicker {
  color: var(--jx-green);
}

.about-commitment h2 {
  color: var(--about-charcoal);
}

.about-commitment-inner > p {
  color: var(--about-muted);
}

@media (max-width: 720px) {
  .about-hero,
  .about-hero-inner { min-height: 620px; }
  .about-hero-shade { background: linear-gradient(180deg, rgba(19,22,19,.74), rgba(19,22,19,.82)); }
  .about-hero-lead { padding-left: 0; }
  .about-hero-lead::before { display: none; }
  .about-intro-photo { box-shadow: 10px 10px 0 #edf2e8; }
  .about-number-grid > div { min-height: 140px; }
}

/* Brand culture */
.culture-page { --culture-paper: #f7f6f2; --culture-ink: #20231f; background: var(--culture-paper); color: var(--culture-ink); }
.culture-kicker { margin: 0 0 16px; color: var(--jx-green); font-size: 12px; font-weight: 950; letter-spacing: .17em; text-transform: uppercase; }
.culture-hero { position: relative; min-height: 690px; overflow: hidden; background: var(--culture-ink); color: #fff; }
.culture-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.culture-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,23,20,.92), rgba(20,23,20,.66) 48%, rgba(20,23,20,.15)); }
.culture-hero-inner { position: relative; z-index: 2; display: flex; min-height: 690px; flex-direction: column; justify-content: center; align-items: flex-start; padding-top: 80px; padding-bottom: 80px; }
.culture-hero .culture-kicker { color: #fff; opacity: .74; }
.culture-hero h1 { max-width: 840px; margin: 0; color: #fff; font-size: clamp(52px, 6.5vw, 90px); font-weight: 950; line-height: 1.06; letter-spacing: 0; }
.culture-hero-inner > p:last-child { position: relative; margin: 30px 0 0; padding-left: 66px; color: rgba(255,255,255,.84); font-size: 20px; font-weight: 800; }
.culture-hero-inner > p:last-child::before { content: ""; position: absolute; left: 0; top: 12px; width: 46px; height: 3px; background: var(--jx-orange); }
.culture-mark { position: absolute; right: 3vw; bottom: -35px; z-index: 1; color: rgba(255,255,255,.08); font-size: 180px; font-weight: 950; line-height: 1; }

.culture-belief { padding: 100px 0; }
.culture-belief-layout { display: grid; grid-template-columns: .8fr 1.15fr 1.05fr; gap: 60px; align-items: start; }
.culture-belief-title h2 { margin: 0; font-size: clamp(38px, 4.6vw, 62px); font-weight: 950; line-height: 1.16; letter-spacing: 0; }
.culture-belief-lead { margin: 44px 0 0; color: #155d43; font-size: 20px; font-weight: 750; line-height: 1.9; }
.culture-belief-note { margin-top: 42px; padding: 28px; border-left: 5px solid var(--jx-orange); background: #fff; }
.culture-belief-note span { display: block; color: var(--jx-green); font-size: 12px; font-weight: 900; }
.culture-belief-note b { display: block; margin-top: 12px; color: #155d43; font-size: 17px; line-height: 1.75; }

.culture-purpose { background: #fff; }
.culture-purpose-grid { display: grid; grid-template-columns: .86fr .86fr 1.28fr; min-height: 590px; }
.culture-purpose article { display: flex; flex-direction: column; justify-content: center; padding: 54px 42px; border-right: 1px solid #edf2e8; }
.culture-purpose article span { color: var(--jx-orange); font-size: 12px; font-weight: 950; letter-spacing: .12em; }
.culture-purpose article h2 { margin: 24px 0 0; font-size: 34px; font-weight: 950; }
.culture-purpose article p { margin: 24px 0 0; color: #28734f; font-size: 16px; line-height: 2; }
.culture-purpose figure { position: relative; min-height: 590px; margin: 0; overflow: hidden; }
.culture-purpose figure img { width: 100%; height: 100%; object-fit: cover; }
.culture-purpose figcaption { position: absolute; right: 18px; bottom: 18px; padding: 12px 16px; background: rgba(24,27,24,.88); color: #fff; font-weight: 900; }

.culture-values { padding: 100px 0; background: var(--culture-ink); color: #fff; }
.culture-section-heading { display: flex; gap: 70px; justify-content: space-between; align-items: end; margin-bottom: 44px; }
.culture-section-heading h2 { margin: 0; color: inherit; font-size: clamp(36px, 4.5vw, 58px); font-weight: 950; line-height: 1.18; letter-spacing: 0; }
.culture-section-heading > p { max-width: 440px; margin: 0; color: #28734f; line-height: 1.9; }
.culture-values .culture-kicker { color: #b8ca4b; }
.culture-values .culture-section-heading > p { color: rgba(255,255,255,.62); }
.culture-value-list { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.16); list-style: none; }
.culture-value-list li { display: grid; grid-template-columns: 90px 1fr 52px; gap: 26px; align-items: center; padding: 30px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.culture-value-list > li > span { color: var(--jx-orange); font: 950 16px/1 Arial,sans-serif; }
.culture-value-list h3 { margin: 0; color: #fff; font-size: 27px; }
.culture-value-list p { margin: 8px 0 0; color: rgba(255,255,255,.62); line-height: 1.8; }
.culture-value-list svg { width: 30px; height: 30px; color: #b8ca4b; }

.culture-principle { padding: 100px 0; background: #fff; }
.culture-principle-layout { display: grid; grid-template-columns: 1.15fr .85fr; gap: 72px; align-items: center; }
.culture-principle figure { min-height: 570px; margin: 0; overflow: hidden; }
.culture-principle figure img { width: 100%; height: 100%; min-height: 570px; object-fit: cover; }
.culture-principle h2 { margin: 0; font-size: clamp(46px, 6vw, 78px); font-weight: 950; line-height: 1.04; letter-spacing: 0; }
.culture-principle h2 em { color: var(--jx-green); font-style: normal; }
.culture-principle div > p:not(.culture-kicker) { margin: 30px 0 0; color: #28734f; font-size: 17px; line-height: 2; }
.culture-principle a { display: inline-flex; gap: 8px; align-items: center; margin-top: 30px; color: var(--jx-green); font-weight: 950; }
.culture-principle a svg { width: 18px; }

.culture-promise { padding: 100px 0; border-top: 1px solid #edf2e8; }
.culture-promise-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border: 1px solid #edf2e8; background: #fff; }
.culture-promise-grid div { min-height: 190px; padding: 40px 30px; border-right: 1px solid #edf2e8; }
.culture-promise-grid div:last-child { border-right: 0; }
.culture-promise-grid b { display: block; color: var(--jx-green); font-size: 27px; }
.culture-promise-grid div:nth-child(even) b { color: var(--jx-orange); }
.culture-promise-grid span { display: block; margin-top: 18px; color: #28734f; }

.culture-closing { position: relative; min-height: 560px; overflow: hidden; background: var(--culture-ink); color: #fff; }
.culture-closing > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.culture-closing-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(19,22,19,.9), rgba(19,22,19,.46)); }
.culture-closing-inner { position: relative; z-index: 2; display: flex; min-height: 560px; flex-direction: column; justify-content: center; align-items: flex-start; }
.culture-closing .culture-kicker { color: #d5e2cf; }
.culture-closing h2 { margin: 0; color: #fff; font-size: clamp(48px, 6vw, 78px); font-weight: 950; line-height: 1.08; letter-spacing: 0; }
.culture-closing button { min-height: 50px; margin-top: 32px; padding: 0 28px; border: 0; background: var(--jx-orange); color: #fff; font-weight: 950; cursor: pointer; }

@media (max-width: 1000px) {
  .culture-belief-layout { grid-template-columns: 1fr 1.2fr; }
  .culture-belief-note { grid-column: 1 / -1; }
  .culture-purpose-grid { grid-template-columns: 1fr 1fr; }
  .culture-purpose figure { grid-column: 1 / -1; min-height: 480px; }
  .culture-principle-layout { grid-template-columns: 1fr; }
  .culture-promise-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .culture-promise-grid div { border-bottom: 1px solid #edf2e8; }
}

@media (max-width: 720px) {
  .culture-hero,
  .culture-hero-inner { min-height: 610px; }
  .culture-hero-shade { background: rgba(20,23,20,.7); }
  .culture-hero h1 { font-size: 44px; }
  .culture-hero-inner > p:last-child { padding-left: 0; font-size: 16px; line-height: 1.8; }
  .culture-hero-inner > p:last-child::before,
  .culture-mark { display: none; }
  .culture-belief,
  .culture-values,
  .culture-principle,
  .culture-promise { padding: 64px 0; }
  .culture-belief-layout { grid-template-columns: 1fr; gap: 24px; }
  .culture-belief-lead,
  .culture-belief-note { margin-top: 0; }
  .culture-purpose-grid { grid-template-columns: 1fr; }
  .culture-purpose article { padding: 48px 22px; border-right: 0; border-bottom: 1px solid #edf2e8; }
  .culture-purpose figure { grid-column: auto; min-height: 340px; }
  .culture-section-heading { display: block; margin-bottom: 28px; }
  .culture-section-heading > p { margin-top: 16px; }
  .culture-value-list li { grid-template-columns: 46px 1fr; gap: 14px; }
  .culture-value-list svg { display: none; }
  .culture-principle-layout { gap: 34px; }
  .culture-principle figure,
  .culture-principle figure img { min-height: 330px; }
  .culture-promise-grid { grid-template-columns: 1fr; }
  .culture-promise-grid div { min-height: 140px; border-right: 0; }
  .culture-closing,
  .culture-closing-inner { min-height: 520px; }
}

/* Honor archive */
.honor-page-new { --honor-paper: #f7f6f2; --honor-ink: #20231f; background: var(--honor-paper); color: var(--honor-ink); }
.honor-new-kicker { margin:0 0 15px; color: var(--jx-green); font-size:12px; font-weight:950; letter-spacing:.17em; text-transform:uppercase; }
.honor-new-hero { position:relative; min-height:680px; overflow:hidden; background: var(--honor-ink); color: #fff; }
.honor-new-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.honor-new-shade { position:absolute; inset:0; background: linear-gradient(90deg,rgba(19,22,19,.91),rgba(19,22,19,.55) 52%,rgba(19,22,19,.14)); }
.honor-new-hero-inner { position:relative; z-index:2; display:flex; min-height:680px; flex-direction:column; justify-content:center; align-items:flex-start; }
.honor-new-hero .honor-new-kicker { color: #fff; opacity:.7; }
.honor-new-hero h1 { margin:0; color: #fff; font-size:clamp(72px,10vw,138px); font-weight:950; line-height:.92; letter-spacing:0; }
.honor-new-hero-inner > p:nth-of-type(2) { max-width:620px; margin:30px 0 0; color: rgba(255,255,255,.78); font-size:19px; line-height:1.85; }
.honor-new-hero-inner > div { display:flex; gap:12px; margin-top:32px; }
.honor-new-hero-inner a { padding:12px 18px; border: 1px solid rgba(255,255,255,.34); color: #fff; font-weight:900; }
.honor-new-hero-inner a:first-child { border-color: var(--jx-orange); background: var(--jx-orange); }
.honor-new-hero aside { position:absolute; right:4vw; bottom:46px; z-index:2; display:flex; gap:14px; align-items:end; color: #fff; }
.honor-new-hero aside strong { color: var(--jx-orange); font:950 64px/.8 Arial,sans-serif; }
.honor-new-hero aside span { max-width:130px; color: rgba(255,255,255,.68); font-size:12px; line-height:1.5; }

.honor-new-intro { padding:90px 0; }
.honor-new-intro-grid { display:grid; grid-template-columns:.8fr 1.15fr 1.05fr; gap:60px; align-items:start; }
.honor-new-intro h2 { margin:0; font-size:clamp(40px,4.8vw,62px); font-weight:950; line-height:1.15; letter-spacing:0; }
.honor-new-intro-grid > p { margin:42px 0 0; color: #28734f; font-size:18px; line-height:1.95; }
.honor-new-intro dl { margin:38px 0 0; border-top: 1px solid #d9d8d1; }
.honor-new-intro dl div { display:flex; justify-content:space-between; gap:20px; padding:16px 0; border-bottom: 1px solid #d9d8d1; }
.honor-new-intro dt { color: var(--jx-green); font-weight:950; }
.honor-new-intro dd { margin:0; color: #717971; font-size:13px; }

.honor-institution { padding:90px 0 100px; background: #fff; }
.honor-new-heading { display:flex; gap:70px; justify-content:space-between; align-items:end; margin-bottom:40px; }
.honor-new-heading h2 { margin:0; font-size:clamp(38px,4.6vw,58px); font-weight:950; line-height:1.18; letter-spacing:0; }
.honor-new-heading > p { max-width:430px; margin:0; color: #28734f; line-height:1.9; }
.honor-feature { display:grid; grid-template-columns:1.25fr .75fr; min-height:540px; background: var(--honor-ink); color: #fff; }
.honor-feature button { position:relative; overflow:hidden; border: 0; padding:0; cursor:zoom-in; }
.honor-feature button img { width:100%; height:100%; min-height:540px; object-fit:cover; }
.honor-feature button span { position:absolute; left:18px; bottom:18px; padding:10px 14px; background: rgba(25,28,25,.86); color: #fff; font-weight:900; }
.honor-feature > div { display:flex; flex-direction:column; justify-content:center; padding:46px; }
.honor-feature > div > p:first-child { color: #b8ca4b; font-size:12px; font-weight:950; letter-spacing:.14em; text-transform:uppercase; }
.honor-feature h3 { margin:20px 0 0; color: #fff; font-size:clamp(34px,4vw,50px); font-weight:950; line-height:1.18; }
.honor-feature > div > p:last-child { margin:26px 0 0; color: rgba(255,255,255,.62); line-height:1.9; }
.honor-plaque-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:28px; background: #dddcd5; border: 1px solid #dddcd5; }
.honor-plaque-grid button { padding:12px; border: 0; background: var(--honor-paper); text-align:left; cursor:zoom-in; }
.honor-plaque-grid img { width:100%; height:250px; object-fit:cover; }
.honor-plaque-grid span { display:flex; gap:14px; align-items:center; padding:17px 5px 6px; color: #323a34; font-weight:900; }
.honor-plaque-grid b { color: var(--jx-orange); font:950 12px/1 Arial,sans-serif; }

.honor-people { padding:100px 0; background: var(--honor-ink); color: #fff; }
.honor-people .honor-new-kicker { color: #b8ca4b; }
.honor-people .honor-new-heading > p { color: rgba(255,255,255,.58); }
.honor-tabs { display:flex; gap:0; margin-bottom:26px; border-bottom: 1px solid rgba(255,255,255,.18); }
.honor-tabs button { padding:15px 22px; border: 0; border-bottom: 3px solid transparent; background: transparent; color: rgba(255,255,255,.58); font-weight:950; cursor:pointer; }
.honor-tabs button.is-active { border-bottom-color: var(--jx-orange); color: #fff; }
.honor-tabs span { margin-left:7px; color: var(--jx-orange); }
.honor-archive { display:none; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.honor-archive.is-active { display:grid; }
.honor-archive-item { position:relative; min-height:290px; overflow:hidden; border: 0; padding:0; background: #313531; cursor:zoom-in; }
.honor-archive-item.is-deferred { display:none; }
.honor-archive.is-expanded .honor-archive-item.is-deferred { display:block; }
.honor-archive-item img { width:100%; height:100%; min-height:290px; object-fit:cover; transition:transform .45s ease; }
.honor-archive-item:hover img { transform:scale(1.035); }
.honor-archive-item span { position:absolute; inset:auto 10px 10px auto; display:flex; gap:8px; align-items:center; padding:8px 10px; background: rgba(20,23,20,.84); color: #fff; font:900 11px/1 Arial,sans-serif; }
.honor-archive-item svg { width:14px; }
.honor-expand { display:flex; gap:8px; align-items:center; justify-content:center; min-height:48px; margin:30px auto 0; padding:0 24px; border: 1px solid rgba(255,255,255,.28); background: transparent; color: #fff; font-weight:950; cursor:pointer; }
.honor-expand svg { width:17px; }

.honor-new-cta { padding:75px 0; background: #fff; }
.honor-new-cta > div { display:flex; gap:50px; justify-content:space-between; align-items:center; }
.honor-new-cta h2 { max-width:800px; margin:0; font-size:clamp(34px,4.5vw,54px); font-weight:950; line-height:1.2; letter-spacing:0; }
.honor-new-cta button { min-height:50px; padding:0 26px; border: 0; background: var(--jx-orange); color: #fff; font-weight:950; cursor:pointer; white-space:nowrap; }
.honor-archive-open { overflow:hidden; }
.honor-archive-lightbox { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:28px; background: rgba(16,18,16,.95); }
.honor-archive-lightbox[hidden] { display:none; }
.honor-archive-lightbox figure { width:min(1120px,100%); margin:0; text-align:center; }
.honor-archive-lightbox img { width:100%; max-height:calc(100vh - 120px); object-fit:contain; }
.honor-archive-lightbox figcaption { margin-top:14px; color: rgba(255,255,255,.78); font-weight:900; }
.honor-archive-lightbox > button { position:fixed; right:20px; top:20px; display:grid; width:46px; height:46px; place-items:center; border: 0; background: var(--jx-orange); color: #fff; cursor:pointer; }

@media(max-width:1000px){.honor-new-intro-grid{grid-template-columns:1fr 1.2fr}.honor-new-intro dl{grid-column:1/-1}.honor-feature{grid-template-columns:1fr}.honor-plaque-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.honor-archive{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.honor-new-hero,.honor-new-hero-inner{min-height:610px}.honor-new-shade{background: rgba(19,22,19,.68)}.honor-new-hero h1{font-size:66px}.honor-new-hero aside{display:none}.honor-new-intro,.honor-institution,.honor-people{padding:64px 0}.honor-new-intro-grid{grid-template-columns:1fr;gap:24px}.honor-new-intro-grid>p,.honor-new-intro dl{margin-top:0}.honor-new-heading{display:block;margin-bottom:28px}.honor-new-heading>p{margin-top:16px}.honor-feature button img{min-height:330px}.honor-feature>div{padding:32px 22px}.honor-plaque-grid{grid-template-columns:1fr}.honor-plaque-grid img{height:280px}.honor-archive{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.honor-archive-item,.honor-archive-item img{min-height:220px}.honor-new-cta>div{display:block}.honor-new-cta button{margin-top:24px}}

@media (prefers-reduced-motion: reduce) {
  .history-entry, .history-photo img, .history-scroll-cue { transition: none; }
}

/* Logo-aligned history theme */
.history-page {
  --history-green: #155d43;
  --history-green-deep: #093e2d;
  --history-orange: #e77935;
  --history-lime: #28734f;
  --history-ink: #093e2d;
  --history-paper: #f7faf6;
  background: var(--history-paper);
}

.history-hero {
  min-height: 650px;
  background: #f3f9f4;
}

.history-hero > .pointer-events-none:first-child {
  opacity: .12 !important;
  filter: none !important;
  background-position: center 40% !important;
}

.history-hero > .pointer-events-none:nth-child(n+2) {
  display: none;
}

.history-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(247, 250, 246, .78);
  pointer-events: none;
}

.history-hero::after {
  color: rgba(21, 93, 67, .18);
}

.history-eyebrow {
  color: var(--history-green);
}

.history-title {
  color: var(--history-green-deep);
}

.history-title span {
  color: var(--history-orange);
}

.history-lead {
  color: #155d43;
}

.history-scroll-cue {
  border-color: rgba(21, 93, 67, .34);
  color: var(--history-green);
}

.history-scroll-cue:hover {
  background: var(--history-green);
}

[data-history-timeline] > div:first-child {
  left: 30px !important;
  margin-left: 0 !important;
  background: #edf2e8 !important;
}

[data-history-progress] {
  left: 30px !important;
  margin-left: 0 !important;
  background: var(--history-green) !important;
}

.history-timeline-list {
  gap: 64px;
}

.history-entry {
  padding-left: 78px;
}

.history-dot {
  left: 21px;
  top: 48px;
  width: 20px;
  height: 20px;
  border: 5px solid var(--history-paper);
  background: var(--history-orange);
  box-shadow: 0 0 0 1px var(--history-orange), 0 6px 18px rgba(231, 121, 53, .28);
}

.history-story {
  display: block;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid #edf2e8;
  border-top: 0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 20px 55px rgba(21, 93, 67, .10);
}

.history-story::before {
  content: "";
  display: block;
  height: 6px;
  background: linear-gradient(90deg, var(--history-green) 0 72%, var(--history-lime) 72% 86%, var(--history-orange) 86%);
}

.history-copy {
  display: grid;
  grid-template-columns: 180px minmax(230px, .72fr) minmax(360px, 1.28fr);
  gap: 28px;
  align-items: start;
  padding: 34px 38px;
}

.history-year {
  color: var(--history-green);
  font-size: 64px;
}

.history-index {
  right: 38px;
  top: 28px;
  color: var(--history-orange);
}

.history-copy h2 {
  margin: 8px 0 0;
  color: var(--history-ink);
  font-size: 27px;
  line-height: 1.45;
}

.history-description {
  margin-top: 2px;
  color: #28734f;
  font-size: 16px;
  line-height: 1.9;
}

.history-gallery {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  padding: 8px;
  background: #edf4ef;
}

.history-gallery-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.history-gallery-3 .history-photo:first-child {
  grid-row: auto;
}

.history-photo,
.history-photo img {
  min-height: 210px;
}

.history-photo {
  border-radius: 6px;
  background: #fff;
}

.history-photo img {
  object-fit: cover;
}

.history-photo img[src*="2026-02"] {
  object-fit: contain;
}

.history-photo span {
  border-radius: 6px;
  background: rgba(21, 93, 67, .88);
}

.history-lightbox > button {
  border-radius: 6px;
  background: var(--history-green);
}

.history-page .text-red-500 {
  color: var(--history-orange) !important;
}

.history-page figure.mt-10 {
  border-radius: 8px !important;
  background: var(--history-green-deep) !important;
  box-shadow: 0 24px 70px rgba(9, 62, 45, .18) !important;
}

.history-page figure.mt-10 figcaption {
  background: var(--history-green-deep) !important;
  color: rgba(255,255,255,.86) !important;
}

@media (max-width: 1050px) {
  .history-copy {
    grid-template-columns: 150px minmax(220px, .8fr) minmax(300px, 1.2fr);
    gap: 22px;
    padding: 30px;
  }

  .history-year { font-size: 54px; }
  .history-copy h2 { font-size: 23px; }
  .history-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .history-gallery-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .history-hero { min-height: auto; }
  .history-title { font-size: 50px; line-height: .96; }
  [data-history-timeline] > div:first-child,
  [data-history-progress] { left: 18px !important; }
  .history-entry { padding-left: 43px; }
  .history-dot { left: 9px; top: 38px; }
  .history-copy {
    display: block;
    padding: 26px 22px 24px;
  }
  .history-year { font-size: 48px; }
  .history-index { right: 22px; top: 27px; }
  .history-copy h2 { margin-top: 18px; font-size: 22px; }
  .history-description { margin-top: 13px; }
  .history-gallery,
  .history-gallery-3 { grid-template-columns: 1fr; }
  .history-photo,
  .history-photo img { min-height: 220px; }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}


/* ===== Redesigned home page ===== */
.home-page { background: #fff; }
.home-hero { position: relative; overflow: hidden; min-height: 720px; color: #fff; background: #093e2d; }
.home-hero-bg, .home-hero-bg::after, .home-hero-bg img { position: absolute; inset: 0; }
.home-hero-bg img { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.05) contrast(1.04); }
.home-hero-bg::after { content: ""; background: radial-gradient(circle at 16% 18%, rgba(184, 202, 75, .45), transparent 32%), linear-gradient(105deg, rgba(9, 62, 45, .96) 0%, rgba(9, 62, 45, .84) 48%, rgba(9, 62, 45, .38) 100%); }
@media (min-width: 721px) {
  .home-hero-bg::after { background: radial-gradient(circle at 16% 18%, rgba(184, 202, 75, .28), transparent 30%), linear-gradient(100deg, rgba(9, 62, 45, .98) 0%, rgba(9, 62, 45, .94) 36%, rgba(9, 62, 45, .72) 60%, rgba(9, 62, 45, .36) 100%); }
}
.home-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1.05fr) 420px; gap: 54px; align-items: center; min-height: 720px; padding: 82px 0; }
.home-eyebrow, .home-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px; color: var(--coral); font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.home-eyebrow { padding: 9px 14px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(255,255,255,.12); color: #edf2e8; backdrop-filter: blur(10px); text-transform: none; letter-spacing: 0; }
.home-eyebrow svg { width: 18px; height: 18px; }
.home-hero h1 { max-width: 860px; margin: 0; font-size: clamp(42px, 6vw, 76px); line-height: 1.04; font-weight: 950; letter-spacing: -0.05em; text-wrap: balance; overflow-wrap: anywhere; word-break: normal; }
.home-hero-text { max-width: 720px; margin: 24px 0 0; color: rgba(255,255,255,.82); font-size: 20px; line-height: 1.8; }
.home-hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.home-light-btn { border-color: rgba(255,255,255,.34) !important; background: rgba(255,255,255,.12) !important; color: #fff !important; backdrop-filter: blur(12px); }
.home-trust-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.home-trust-row span { padding: 12px 16px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.78); }
.home-trust-row strong { color: #fff; font-size: 20px; }
.home-hero-card { padding: 26px; border: 1px solid rgba(255,255,255,.2); border-radius: 30px; background: rgba(255,255,255,.14); box-shadow: 0 30px 90px rgba(0,0,0,.25); backdrop-filter: blur(18px); }
.home-card-head span { color: #edf2e8; font-weight: 900; }
.home-card-head strong { display: block; margin-top: 10px; font-size: 30px; line-height: 1.2; }
.home-card-head p { margin: 12px 0 0; color: rgba(255,255,255,.75); }
.home-fast-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 24px; }
.home-fast-links button { min-height: 52px; border: 1px solid rgba(255,255,255,.18); border-radius: 14px; background: rgba(255,255,255,.12); color: #fff; font-weight: 800; cursor: pointer; }
.home-fast-links button:hover { background: var(--coral); }
.home-phone { display: flex; align-items: center; gap: 10px; margin-top: 18px; padding: 16px; border-radius: 16px; background: #fff; color: var(--ink); font-weight: 900; }
.home-phone svg { color: var(--coral); }
.home-section { padding: 88px 0; }
.home-section-title { max-width: 760px; margin: 0 auto 40px; text-align: center; }
.home-section-title.left { margin-left: 0; text-align: left; }
.home-section-title p { margin: 0 0 8px; color: var(--coral); font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.home-section-title h2, .home-about-copy h2, .home-process h2, .home-honor h2, .home-news-card h2, .home-cta-card h2 { margin: 0; color: var(--ink); font-size: clamp(32px,4vw,48px); line-height: 1.15; letter-spacing: -0.035em; }
.home-section-title span, .home-about-copy p, .home-process p, .home-honor p, .home-cta-card p { display: block; margin-top: 14px; color: var(--muted); font-size: 17px; }
.home-feature-strip { padding: 0; background: linear-gradient(180deg,#fff,#f8fafc); }
.home-feature-grid { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin-top: -54px; }
.home-feature-grid article { padding: 28px; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: 0 18px 50px rgba(9, 62, 45, .1); }
.home-feature-grid article > svg, .home-course-card > svg { display: grid; width: 48px; height: 48px; padding: 11px; border-radius: 16px; background: var(--coral-soft); color: var(--coral); }
.home-entry-grid svg { width: 25px; height: 25px; color: var(--coral); }
.home-feature-grid h3 { margin: 18px 0 8px; font-size: 22px; }
.home-feature-grid p, .home-course-card p { margin: 0; color: var(--muted); }
.home-courses { background: #f7f8fb; }
.home-course-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.home-course-card { min-height: 240px; padding: 28px; border: 1px solid var(--line); border-radius: 28px; background: #fff; box-shadow: 0 16px 42px rgba(9, 62, 45, .06); transition: transform .2s ease, box-shadow .2s ease; }
.home-course-card:hover { transform: translateY(-5px); box-shadow: 0 22px 60px rgba(9, 62, 45, .12); }
.home-course-card h3 { margin: 18px 0 10px; font-size: 24px; line-height: 1.25; }
.home-course-card:not(.featured) { display: grid; grid-template-rows: 190px auto; overflow: hidden; padding: 0; }
.home-course-card:not(.featured) > div { padding: 20px 22px 22px; }
.home-course-card .course-thumb { width: 100%; height: 100%; object-fit: cover; object-position: center 28%; display: block; background: #f6f5ef; }
.home-course-card[href="course_housekeeping_worker.html"] .course-thumb { object-position: center 42%; }
.home-course-card[href="course_nursery.html"] .course-thumb { object-position: center 42%; }
.home-course-card[href="course_eldercare.html"] .course-thumb { object-position: center 40%; }
.home-course-card[href="course_long_term_care.html"] .course-thumb { object-position: center 34%; }
.home-course-card[href="course_syb.html"] .course-thumb { object-position: center 38%; }
.home-course-card.featured { grid-row: span 2; display: grid; grid-template-rows: 260px auto; overflow: hidden; padding: 0; background: var(--ink); color: #fff; }
.home-course-card.featured img { width: 100%; height: 100%; object-fit: cover; }
.home-course-card.featured div { padding: 28px; }
.home-course-card.featured small { color: #edf2e8; font-weight: 900; }
.home-course-card.featured p { color: rgba(255,255,255,.72); }
.home-about-grid, .home-process-grid, .home-honor-grid, .home-news-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 56px; align-items: center; }
.home-about-media { position: relative; min-height: 0; }
.home-about-main { width: 100%; height: 560px; object-fit: cover; border-radius: 36px; box-shadow: 0 24px 70px rgba(9, 62, 45, .16); }
.home-about-small { position: absolute; right: 0; bottom: 0; width: 46%; min-height: 230px; object-fit: cover; border: 10px solid #fff; border-radius: 30px; box-shadow: 0 24px 70px rgba(9, 62, 45, .14); }
.home-metrics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 28px 0; }
.home-metrics div { padding: 18px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.home-metrics strong { display: block; color: var(--coral); font-size: 34px; line-height: 1; font-variant-numeric: tabular-nums; }
.home-metrics span { color: var(--muted); font-size: 14px; }
.home-services { background: #093e2d; color: #fff; }
.home-services .home-section-title h2 { color: #fff; }
.home-services .home-section-title span { color: rgba(255,255,255,.65); }
.home-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.home-service-grid a { position: relative; display: flex; min-height: 280px; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 24px; border-radius: 28px; background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.72)), var(--bg) var(--pos, center)/cover; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); transition: transform .2s ease; }
.home-service-grid a:hover { transform: translateY(-5px); }
.home-service-grid span { font-size: 26px; font-weight: 950; }
.home-service-grid em { color: rgba(255,255,255,.75); font-style: normal; }
.home-process { background: #f6f5ef; }
.home-steps { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.home-steps li { display: grid; grid-template-columns: 70px 1fr; gap: 0 18px; padding: 22px; border: 1px solid #edf2e8; border-radius: 22px; background: #fff; }
.home-steps span { grid-row: span 2; color: var(--coral); font-size: 28px; font-weight: 950; }
.home-steps strong { font-size: 22px; }
.home-steps p { margin: 4px 0 0; }
.home-honor { position: relative; overflow: hidden; isolation: isolate; }
.home-honor::before { content: ""; position: absolute; inset: -22px; z-index: 0; background: url('/assets/home-honor-bg-real.png') center/cover no-repeat; filter: blur(9px) saturate(1.05); transform: scale(1.04); }
.home-honor::after { content: ""; position: absolute; inset: 0; z-index: 0; background: linear-gradient(180deg, rgba(245,247,250,.74), rgba(245,247,250,.66)); }
.home-honor .container { position: relative; z-index: 1; }
.home-honor-grid img { width: 100%; border-radius: 32px; box-shadow: 0 24px 70px rgba(9, 62, 45, .16); }
.home-honor-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 24px 0 30px; }
.home-honor-list span { padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.75); backdrop-filter: blur(6px); color: var(--ink); font-weight: 800; }
.home-news-cta { background: linear-gradient(135deg,#f8fafc,#f6f5ef); }
.home-news-card, .home-cta-card { padding: 34px; border: 1px solid var(--line); border-radius: 30px; background: rgba(255,255,255,.86); box-shadow: 0 18px 50px rgba(9, 62, 45, .08); }
.home-entry-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-top: 24px; }
.home-entry-grid a { display: flex; align-items: center; gap: 10px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #fff; font-weight: 900; }
.home-entry-grid a:hover { color: var(--coral); border-color: rgba(184, 202, 75, .35); }
.home-cta-card { background: #093e2d; color: #fff; }
.home-cta-card h2 { color: #fff; }
.home-cta-card p { color: rgba(255,255,255,.72); margin-bottom: 26px; }

@media (max-width: 1180px) {
  .home-hero-inner, .home-about-grid, .home-process-grid, .home-honor-grid, .home-news-grid { grid-template-columns: 1fr; }
  .home-hero-card { max-width: 620px; }
  .home-feature-grid, .home-course-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  body {
    padding-bottom: 64px;
  }

  .home-hero { min-height: auto; }
  .home-hero-bg img { object-position: 58% center; }
  .home-hero-bg::after { background: linear-gradient(180deg, rgba(9, 62, 45, .88) 0%, rgba(9, 62, 45, .82) 46%, rgba(9, 62, 45, .96) 100%); }
  .home-hero-inner { display: block; min-height: auto; padding: 34px 0 40px; }
  .home-eyebrow { margin-bottom: 14px; padding: 8px 12px; font-size: 13px; line-height: 1.35; }
  .home-hero h1 { max-width: 100%; font-size: 28px; line-height: 1.2; letter-spacing: 0; text-wrap: auto; word-break: keep-all; overflow-wrap: anywhere; white-space: normal; }
  .home-hero-copy { min-width: 0; }
  .home-hero-text { margin-top: 16px; font-size: 15px; line-height: 1.78; word-break: keep-all; overflow-wrap: anywhere; }
  .home-hero-actions { display: grid; gap: 12px; margin-top: 24px; }
  .home-hero-actions .btn { min-height: 52px; border-radius: 999px; }
  .home-trust-row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 24px; }
  .home-trust-row span { min-height: 58px; padding: 8px 10px; border-radius: 18px; font-size: 12px; line-height: 1.35; }
  .home-trust-row strong { display: block; font-size: 18px; line-height: 1.05; }
  .home-hero-card { margin-top: 24px; padding: 16px; border-radius: 20px; background: rgba(255,255,255,.12); }
  .home-card-head strong { margin-top: 5px; font-size: 22px; }
  .home-card-head p { margin-top: 8px; font-size: 14px; line-height: 1.65; }
  .home-fast-links { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 16px; }
  .home-fast-links button { min-height: 42px; border-radius: 12px; font-size: 14px; }
  .home-phone { margin-top: 12px; padding: 12px; border-radius: 14px; font-size: 14px; }
  .home-fast-links, .home-feature-grid, .home-course-grid, .home-service-grid, .home-metrics, .home-honor-list, .home-entry-grid { grid-template-columns: 1fr; }
  .home-section { padding: 46px 0; }
  .home-section-title { margin-bottom: 24px; text-align: left; }
  .home-section-title p { font-size: 12px; letter-spacing: .08em; }
  .home-section-title h2, .home-about-copy h2, .home-process h2, .home-honor h2, .home-news-card h2, .home-cta-card h2 { font-size: 26px; line-height: 1.18; letter-spacing: 0; }
  .home-section-title span, .home-about-copy p, .home-process p, .home-honor p, .home-cta-card p { font-size: 15px; line-height: 1.75; }
  .home-feature-grid { gap: 10px; margin-top: 0; padding: 18px 0 0; }
  .home-feature-grid article { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 4px 12px; padding: 16px; border-radius: 18px; box-shadow: 0 10px 28px rgba(9, 62, 45, .08); }
  .home-feature-grid article > svg { grid-row: span 2; width: 42px; height: 42px; padding: 10px; border-radius: 14px; }
  .home-feature-grid h3 { margin: 0; font-size: 18px; }
  .home-feature-grid p { font-size: 14px; line-height: 1.65; }
  .home-course-grid, .home-service-grid { gap: 14px; }
  .home-course-card:not(.featured) { grid-template-rows: 164px auto; border-radius: 22px; }
  .home-course-card.featured { grid-row: auto; grid-template-rows: 220px auto; }
  .home-course-card h3 { margin: 14px 0 8px; font-size: 20px; }
  .home-course-card:not(.featured) > div, .home-course-card.featured div { padding: 18px; }
  .home-about-media { min-height: auto; }
  .home-about-main, .home-about-small { position: static; width: 100%; height: auto; min-height: 0; margin-top: 12px; border: 0; border-radius: 20px; }
  .home-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .home-metrics div { padding: 14px; border-radius: 16px; }
  .home-metrics strong { font-size: 26px; }
  .home-service-grid a { min-height: 186px; padding: 18px; border-radius: 22px; }
  .home-service-grid span { font-size: 22px; }
  .home-steps li { grid-template-columns: 1fr; }
  .home-honor-list { gap: 8px; }
  .home-honor-list span { padding: 12px 14px; font-size: 14px; }
  .home-news-card, .home-cta-card { padding: 22px; border-radius: 22px; }
  .home-entry-grid a { padding: 14px; border-radius: 14px; }
}


/* ===== News center detail pages ===== */
.news-detail-page { background: #fff; }
.news-detail-hero { position: relative; overflow: hidden; background: #093e2d; color: #fff; }
.news-detail-hero-bg, .news-detail-hero-bg::after, .news-detail-hero-bg img { position: absolute; inset: 0; }
.news-detail-hero-bg img { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.04) contrast(1.03); }
.news-detail-hero-bg::after { content: ""; background: radial-gradient(circle at 14% 20%, rgba(184, 202, 75, .42), transparent 32%), linear-gradient(105deg, rgba(9, 62, 45, .96), rgba(9, 62, 45, .84) 48%, rgba(9, 62, 45, .55)); }
.news-detail-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 48px; align-items: center; min-height: 480px; padding: 78px 0; }
.news-detail-eyebrow { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 18px; padding: 9px 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(255,255,255,.12); color: #edf2e8; font-weight: 900; }
.news-detail-eyebrow svg { width: 18px; height: 18px; }
.news-detail-hero h1 { max-width: 800px; margin: 0; font-size: clamp(42px,6vw,70px); line-height: 1.05; font-weight: 950; letter-spacing: -0.045em; }
.news-detail-hero p:not(.news-detail-eyebrow) { max-width: 760px; margin: 22px 0 0; color: rgba(255,255,255,.78); font-size: 20px; line-height: 1.8; }
.news-detail-nav { padding: 22px; border: 1px solid rgba(255,255,255,.18); border-radius: 26px; background: rgba(255,255,255,.13); box-shadow: 0 28px 80px rgba(0,0,0,.22); backdrop-filter: blur(18px); }
.news-detail-nav strong { display: block; margin-bottom: 14px; font-size: 20px; }
.news-detail-nav div { display: grid; gap: 10px; }
.news-detail-nav a { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.82); font-weight: 800; }
.news-detail-nav a.active, .news-detail-nav a:hover { background: #fff; color: var(--coral); }
.news-detail-nav svg { width: 18px; height: 18px; }
.news-detail-section { padding: 76px 0; }
.news-detail-section.alt { background: #f8fafc; }
.news-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 28px; align-items: stretch; }
.notice-page { background: linear-gradient(180deg, #fff 0%, #fff 34%, #f6f8fb 100%); }
.notice-page .news-detail-hero { background: #093e2d; }
.notice-page .news-detail-hero-bg::after { background: radial-gradient(circle at 18% 18%, rgba(184, 202, 75, .42), transparent 28%), radial-gradient(circle at 86% 16%, rgba(21, 93, 67, .28), transparent 30%), linear-gradient(105deg, rgba(9, 62, 45, .98), rgba(9, 62, 45, .88) 48%, rgba(9, 62, 45, .52)); }
.notice-official-section { background: linear-gradient(180deg, #f8fafc, #fff); }
.notice-official-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 28px; align-items: stretch; }
.notice-bulletin-card { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(280px, .72fr); gap: 28px; padding: 34px; overflow: hidden; border: 1px solid rgba(9, 62, 45, .08); border-radius: 34px; background: radial-gradient(circle at 0% 0%, rgba(184, 202, 75, .12), transparent 34%), #fff; box-shadow: 0 24px 70px rgba(9, 62, 45, .1); }
.notice-release-card { position: relative; isolation: isolate; background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,251,248,.94)); }
.notice-release-card::before { content: ""; position: absolute; inset: 14px; z-index: -1; border: 1px solid rgba(9, 62, 45, .06); border-radius: 26px; pointer-events: none; }
.notice-bulletin-copy { display: grid; align-content: center; min-width: 0; }
.notice-label { display: inline-flex; width: fit-content; min-height: 34px; align-items: center; margin: 0 0 14px; padding: 0 12px; border-radius: 999px; background: rgba(184, 202, 75, .1); color: var(--coral); font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.notice-bulletin-copy h2 { margin: 0; color: var(--ink); font-size: clamp(32px,4vw,48px); line-height: 1.12; letter-spacing: -0.04em; }
.notice-meta-row { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 22px; }
.notice-meta-row span { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 12px; border: 1px solid rgba(9, 62, 45, .06); border-radius: 999px; background: #f8fafc; color: #155d43; font-size: 14px; font-weight: 800; }
.notice-meta-row svg { width: 16px; height: 16px; color: var(--coral); }
.notice-bulletin-copy > p:not(.notice-label) { margin: 0 0 14px; color: #155d43; font-size: 17px; line-height: 1.95; }
.notice-article-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 10px 0 8px; }
.notice-article-list div { padding: 16px; border: 1px solid rgba(9, 62, 45, .07); border-radius: 18px; background: linear-gradient(180deg, #fff, #f8fafc); }
.notice-article-list b { display: block; color: var(--ink); font-size: 17px; }
.notice-article-list span { display: block; margin-top: 7px; color: var(--muted); font-size: 14px; line-height: 1.65; }
.notice-feature-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.notice-bulletin-media { position: relative; min-height: 420px; margin: 0; overflow: hidden; border-radius: 26px; background: #093e2d; box-shadow: 0 18px 54px rgba(9, 62, 45, .16); }
.notice-bulletin-media img { width: 100%; height: 100%; object-fit: cover; }
.notice-bulletin-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 42%, rgba(9, 62, 45, .78)); }
.notice-bulletin-media figcaption { position: absolute; left: 20px; right: 20px; bottom: 18px; z-index: 1; display: grid; gap: 5px; color: #fff; }
.notice-bulletin-media strong { font-size: 24px; line-height: 1.2; }
.notice-bulletin-media span { color: rgba(255,255,255,.78); line-height: 1.6; }
.notice-quick-card { padding: 28px; border: 1px solid rgba(9, 62, 45, .08); border-radius: 30px; background: #093e2d; color: #fff; box-shadow: 0 24px 70px rgba(9, 62, 45, .14); }
.notice-quick-card h3 { margin: 0 0 18px; color: #fff; font-size: 26px; }
.notice-quick-card ul { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.notice-quick-card li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; padding: 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.08); }
.notice-quick-card svg { width: 20px; height: 20px; margin-top: 2px; color: #edf2e8; }
.notice-quick-card span { color: rgba(255,255,255,.78); line-height: 1.7; }
.notice-index-card { display: grid; align-content: start; gap: 12px; background: radial-gradient(circle at 100% 0%, rgba(184, 202, 75, .22), transparent 34%), linear-gradient(145deg, #093e2d, #093e2d); }
.notice-index-card p { margin: 0; color: #edf2e8; font-size: 13px; font-weight: 950; letter-spacing: .14em; text-transform: uppercase; }
.notice-index-card h3 { margin-bottom: 8px; }
.notice-index-card a { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 4px 12px; padding: 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: rgba(255,255,255,.08); color: #fff; transition: transform .18s ease, background .18s ease, border-color .18s ease; }
.notice-index-card a:hover { transform: translateY(-3px); border-color: rgba(237, 242, 232, .36); background: rgba(255,255,255,.13); }
.notice-index-card a span { grid-row: span 2; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: rgba(255,255,255,.12); color: #edf2e8; font-weight: 950; }
.notice-index-card a strong { color: #fff; font-size: 16px; line-height: 1.45; }
.notice-index-card a small { color: rgba(255,255,255,.62); font-size: 13px; }
.notice-entry-section { background: linear-gradient(180deg, #f8fafc, #fff); }
.notice-entry-grid .news-detail-card { border-color: rgba(9, 62, 45, .07); background: linear-gradient(180deg, #fff, #fffaf8); }
.notice-visual-section { background: linear-gradient(180deg, #fff, #f8fafc); }
.notice-visual-layout { display: grid; grid-template-columns: minmax(260px, .74fr) minmax(0, 1.26fr); gap: 38px; align-items: center; }
.notice-visual-copy { position: sticky; top: 110px; align-self: start; padding: 34px; border: 1px solid rgba(9, 62, 45, .08); border-radius: 30px; background: linear-gradient(145deg, #093e2d, #093e2d); color: #fff; box-shadow: 0 22px 66px rgba(9, 62, 45, .16); }
.notice-visual-copy p { margin: 0 0 10px; color: #edf2e8; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.notice-visual-copy h2 { margin: 0; color: #fff; font-size: clamp(30px,4vw,44px); line-height: 1.16; letter-spacing: -0.035em; }
.notice-visual-copy span { display: block; margin-top: 16px; color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.9; }
.notice-visual-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(230px, auto); gap: 16px; }
.notice-visual-card { position: relative; min-height: 250px; margin: 0; overflow: hidden; border-radius: 26px; background: #093e2d; box-shadow: 0 18px 50px rgba(9, 62, 45, .12); }
.notice-visual-card.tall { grid-row: span 2; min-height: 520px; }
.notice-visual-card.wide { grid-column: span 2; min-height: 300px; }
.notice-visual-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.notice-visual-card:hover img { transform: scale(1.035); }
.notice-visual-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 42%, rgba(9, 62, 45, .8)); pointer-events: none; }
.notice-visual-card figcaption { position: absolute; left: 18px; right: 18px; bottom: 16px; z-index: 1; display: grid; gap: 5px; color: #fff; }
.notice-visual-card strong { font-size: 22px; line-height: 1.2; }
.notice-visual-card span { color: rgba(255,255,255,.78); line-height: 1.55; }
.notice-process-section { background: linear-gradient(180deg, #fff, #f8fafc); }
.news-showcase-section { background: linear-gradient(180deg, #fff, #f8fafc); }
.news-showcase { display: grid; grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr); gap: 40px; align-items: center; }
.news-showcase-copy { display: grid; align-content: center; min-height: 520px; padding: 38px; border: 1px solid rgba(9, 62, 45, .08); border-radius: 28px; background: #fff; box-shadow: 0 18px 54px rgba(9, 62, 45, .08); }
.news-showcase-copy p { margin: 0 0 10px; color: var(--coral); font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.news-showcase-copy h2 { margin: 0; color: var(--ink); font-size: 42px; line-height: 1.15; letter-spacing: 0; }
.news-showcase-copy span { display: block; margin-top: 18px; color: var(--muted); font-size: 17px; line-height: 1.9; }
.news-showcase-gallery { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(220px, .74fr); grid-template-rows: repeat(2, minmax(220px, 1fr)); gap: 16px; }
.news-showcase-photo { position: relative; min-height: 220px; margin: 0; overflow: hidden; border-radius: 24px; background: #093e2d; box-shadow: 0 18px 46px rgba(9, 62, 45, .16); }
.news-showcase-photo.large { grid-row: span 2; min-height: 540px; }
.news-showcase-photo img { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.02) contrast(1.02); transition: transform .35s ease; }
.news-showcase-photo:hover img { transform: scale(1.035); }
.news-showcase-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 44%, rgba(9, 62, 45, .76)); pointer-events: none; }
.news-showcase-photo figcaption { position: absolute; left: 18px; right: 18px; bottom: 16px; z-index: 1; display: grid; gap: 4px; color: #fff; }
.news-showcase-photo figcaption strong { font-size: 22px; line-height: 1.2; }
.news-showcase-photo figcaption span { color: rgba(255,255,255,.78); line-height: 1.55; }
.news-feature-panel { display: grid; grid-template-columns: minmax(0,1fr) 220px; gap: 24px; padding: 34px; border: 1px solid var(--line); border-radius: 30px; background: linear-gradient(135deg,#fff,#f6f5ef); box-shadow: 0 18px 52px rgba(9, 62, 45, .08); }
.news-feature-copy p, .news-section-head p, .news-cta-inner p { margin: 0 0 10px; color: var(--coral); font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.news-feature-copy h2, .news-section-head h2, .news-cta-inner h2 { margin: 0; color: var(--ink); font-size: clamp(30px,4vw,44px); line-height: 1.16; letter-spacing: -0.035em; }
.news-feature-copy span, .news-section-head span, .news-cta-inner span { display: block; margin-top: 16px; color: var(--muted); font-size: 17px; line-height: 1.85; }
.news-feature-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.news-feature-stat { display: grid; place-items: center; align-content: center; padding: 22px; border-radius: 24px; background: #093e2d; color: #fff; text-align: center; }
.news-feature-stat b { display: block; color: #fff; font-size: 70px; line-height: 1; }
.news-feature-stat span { font-weight: 900; }
.news-feature-stat small { margin-top: 12px; color: rgba(255,255,255,.62); line-height: 1.6; }
.news-side-card { padding: 28px; border: 1px solid var(--line); border-radius: 30px; background: #fff; box-shadow: 0 18px 52px rgba(9, 62, 45, .06); }
.news-side-card h3 { margin: 0 0 18px; font-size: 24px; }
.news-side-card ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.news-side-card li { padding: 13px 14px; border-radius: 14px; background: #f8fafc; color: #155d43; font-weight: 700; }
.news-section-head { max-width: 820px; margin: 0 auto 34px; text-align: center; }
.news-section-head.left { margin: 0; text-align: left; }
.news-detail-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.news-detail-card { display: grid; align-content: start; min-height: 230px; padding: 26px; border: 1px solid var(--line); border-radius: 26px; background: #fff; box-shadow: 0 14px 40px rgba(9, 62, 45, .06); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.news-detail-card:hover { transform: translateY(-5px); border-color: rgba(184, 202, 75, .35); box-shadow: 0 22px 58px rgba(9, 62, 45, .12); }
.news-detail-card svg { width: 46px; height: 46px; padding: 10px; border-radius: 16px; background: var(--coral-soft); color: var(--coral); }
.news-detail-card strong { margin-top: 20px; color: var(--ink); font-size: 22px; line-height: 1.25; }
.news-detail-card span { margin-top: 10px; color: var(--muted); line-height: 1.75; }
.news-process-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 54px; align-items: start; }
.news-timeline { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; counter-reset: item; }
.news-timeline li { position: relative; display: grid; grid-template-columns: 110px 1fr; gap: 18px; padding: 20px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 10px 34px rgba(9, 62, 45, .05); }
.news-timeline b { color: var(--coral); font-size: 22px; }
.news-timeline span { color: #155d43; line-height: 1.75; }
.news-post-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 26px; }
.news-post-card { display: grid; gap: 16px; padding: 24px; border: 1px solid var(--line); border-radius: 26px; background: linear-gradient(180deg,#ffffff,#fff9f7); box-shadow: 0 16px 42px rgba(9, 62, 45, .06); }
.news-post-card.with-cover { grid-template-columns: minmax(0,1.15fr) 220px; align-items: stretch; }
.news-post-card-copy { display: grid; gap: 14px; min-width: 0; }
.news-post-card-media { overflow: hidden; border-radius: 20px; min-height: 180px; background: #f8fafc; }
.news-post-card-media img { width: 100%; height: 100%; object-fit: cover; }
.news-post-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: var(--muted); font-size: 14px; }
.news-post-category { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: 999px; background: var(--coral-soft); color: var(--coral); font-size: 13px; font-weight: 900; letter-spacing: .04em; }
.news-post-pin { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: 999px; background: rgba(21, 93, 67, .12); color: var(--teal); font-size: 13px; font-weight: 900; letter-spacing: .04em; }
.news-post-card h3 { margin: 0; color: var(--ink); font-size: clamp(24px,3vw,30px); line-height: 1.22; letter-spacing: -0.03em; }
.news-post-summary { margin: 0; color: #155d43; line-height: 1.85; }
.news-post-content { color: #155d43; line-height: 1.9; }
.news-post-content p { margin: 0; }
.news-post-content .btn { margin-top: 6px; }
.news-post-content details { border-top: 1px solid var(--line); padding-top: 14px; }
.news-post-content summary { cursor: pointer; color: var(--coral); font-weight: 900; list-style: none; }
.news-post-content summary::-webkit-details-marker { display: none; }
.news-post-content details[open] summary { margin-bottom: 12px; }
.news-post-empty { margin-top: 22px; padding: 18px 20px; border: 1px dashed rgba(184, 202, 75, .22); border-radius: 20px; background: #fff; color: var(--muted); }
.news-post-empty[hidden] { display: none; }
.news-article-side { display: grid; gap: 16px; }
.news-article-meta-box { display: grid; gap: 10px; margin-top: 8px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.82); }
.news-article-meta-box span, .news-article-meta-box small { display: inline-flex; align-items: center; gap: 8px; }
.news-article-shell { max-width: 920px; margin: 0 auto; padding: 34px; border: 1px solid var(--line); border-radius: 30px; background: linear-gradient(180deg,#ffffff,#fff9f7); box-shadow: 0 18px 48px rgba(9, 62, 45, .08); }
.news-article-content { display: grid; gap: 18px; color: #155d43; font-size: 18px; line-height: 1.95; }
.news-article-content p { margin: 0; }
.news-article-pagination { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--line); }
.news-article-pagination[hidden] { display: none; }
.news-article-pagination-card { display: grid; gap: 8px; padding: 18px; border: 1px solid var(--line); border-radius: 20px; background: #fff; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.news-article-pagination-card:hover { transform: translateY(-3px); border-color: rgba(184, 202, 75, .28); box-shadow: 0 14px 32px rgba(9, 62, 45, .08); }
.news-article-pagination-card small { color: var(--muted); font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.news-article-pagination-card strong { color: var(--ink); font-size: 18px; line-height: 1.5; }
.news-bottom-cta { padding-top: 0; }
.news-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 36px; border-radius: 30px; background: #093e2d; color: #fff; box-shadow: 0 22px 70px rgba(9, 62, 45, .16); }
.news-cta-inner h2 { color: #fff; }
.news-cta-inner span { color: rgba(255,255,255,.68); }
@media (max-width: 1180px) {
  .news-detail-hero-inner, .news-detail-layout, .news-showcase, .news-process-layout { grid-template-columns: 1fr; }
  .notice-official-layout, .notice-bulletin-card, .notice-visual-layout { grid-template-columns: 1fr; }
  .notice-article-list { grid-template-columns: 1fr; }
  .news-detail-nav { max-width: 720px; }
  .news-detail-grid, .news-post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .notice-visual-copy { position: static; }
  .news-showcase-copy { min-height: auto; }
}
@media (max-width: 720px) {
  .news-detail-hero-inner { min-height: auto; padding: 54px 0; min-width: 0; overflow: hidden; }
  .news-detail-page, .news-detail-page section { overflow-x: hidden; }
  .news-detail-hero h1 { font-size: 34px; letter-spacing: 0; word-break: break-all; overflow-wrap: anywhere; max-width: 100%; }
  .news-detail-hero p:not(.news-detail-eyebrow) { font-size: 16px; word-break: break-all; overflow-wrap: anywhere; max-width: 100%; }
  .news-detail-nav { width: 100%; max-width: 100%; min-width: 0; overflow: hidden; padding: 16px; border-radius: 20px; }
  .news-detail-nav a { width: 100%; min-width: 0; }
  .news-detail-section { padding: 52px 0; }
  .news-feature-panel, .news-feature-copy, .news-showcase-copy, .news-showcase-gallery, .news-side-card, .news-section-head, .news-detail-card, .news-process-layout, .news-cta-inner, .news-post-card, .notice-bulletin-card, .notice-bulletin-copy, .notice-quick-card, .notice-visual-copy, .notice-visual-grid, .notice-visual-card { max-width: 100%; min-width: 0; overflow: hidden; }
  .news-feature-copy h2, .news-showcase-copy h2, .news-section-head h2, .news-cta-inner h2, .notice-bulletin-copy h2, .notice-visual-copy h2 { max-width: 100%; font-size: 28px; letter-spacing: 0; word-break: break-all; overflow-wrap: anywhere; }
  .news-feature-copy span, .news-showcase-copy span, .news-section-head span, .news-cta-inner span, .news-detail-card span, .news-post-summary, .news-post-content, .notice-bulletin-copy p, .notice-quick-card span, .notice-visual-copy span, .notice-visual-card span { word-break: break-all; overflow-wrap: anywhere; }
  .news-feature-actions .btn { width: 100%; min-width: 0; }
  .news-feature-panel, .news-showcase-gallery, .news-detail-grid, .news-process-layout, .news-post-grid, .news-post-card.with-cover, .notice-official-layout, .notice-bulletin-card, .notice-visual-layout, .notice-visual-grid, .notice-article-list { grid-template-columns: minmax(0, 1fr); }
  .news-showcase-copy { padding: 22px; border-radius: 22px; }
  .news-showcase-photo, .news-showcase-photo.large { min-height: 260px; grid-row: auto; border-radius: 18px; }
  .notice-bulletin-card, .notice-quick-card, .notice-visual-copy { padding: 22px; border-radius: 22px; }
  .notice-bulletin-media { min-height: 280px; border-radius: 18px; }
  .notice-meta-row span { width: 100%; }
  .notice-feature-actions .btn { width: 100%; min-width: 0; }
  .notice-visual-card, .notice-visual-card.tall, .notice-visual-card.wide { grid-column: auto; grid-row: auto; min-height: 260px; border-radius: 18px; }
  .news-feature-panel { padding: 22px; border-radius: 22px; }
  .news-feature-stat { min-height: 180px; }
  .news-detail-card { min-height: auto; }
  .news-post-card { padding: 20px; border-radius: 22px; }
  .news-post-card-media { min-height: 220px; }
  .news-article-shell { padding: 22px; border-radius: 24px; }
  .news-article-content { font-size: 16px; }
  .news-article-pagination { grid-template-columns: 1fr; }
  .news-timeline li { grid-template-columns: 1fr; }
  .news-cta-inner { display: grid; padding: 24px; border-radius: 24px; }
}

/* ===== Industry news feature page ===== */
.industry-page {
  background: radial-gradient(circle at 0% 0%, rgba(40, 115, 79, 0.12), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.08), transparent 26%),
    linear-gradient(180deg, #f6f5ef 0%, #ffffff 18%, #f8fbff 100%);
}

.industry-hero {
  background: #093e2d;
}

.industry-hero .news-detail-hero-bg::after {
  background: radial-gradient(circle at 14% 18%, rgba(40, 115, 79, 0.42), transparent 30%),
    linear-gradient(110deg, rgba(9, 62, 45, 0.94), rgba(9, 62, 45, 0.86) 46%, rgba(9, 62, 45, 0.46));
}

.industry-hero-copy {
  max-width: 820px;
}

.industry-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.industry-light {
  border-color: rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.industry-light:hover {
  background: rgba(255, 255, 255, 0.18);
}

.industry-hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 34px 0 0;
  padding: 0;
}

.industry-hero-metrics div {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 22px;
  background: rgba(9, 62, 45, 0.3);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(14px);
}

.industry-hero-metrics dt {
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
}

.industry-hero-metrics dd {
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.76);
  line-height: 1.75;
}

.industry-hero-panel {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.08));
  box-shadow: 0 28px 82px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(18px);
}

.industry-hero-panel p,
.industry-manifesto p,
.industry-note strong,
.industry-story-card figcaption span,
.industry-pillar small {
  letter-spacing: 0.08em;
}

.industry-hero-panel p {
  margin: 0 0 10px;
  color: #d5e2cf;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.industry-hero-panel h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3vw, 34px);
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.industry-hero-panel ul {
  display: grid;
  gap: 14px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.industry-hero-panel li {
  padding: 16px 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  background: rgba(9, 62, 45, 0.26);
}

.industry-hero-panel strong {
  display: block;
  color: #fff;
  font-size: 17px;
  line-height: 1.3;
}

.industry-hero-panel span {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.75;
}

.industry-panel-note {
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.64);
  font-size: 14px;
  line-height: 1.7;
}

.industry-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
}

.industry-subnav a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 16px;
  border: 1px solid rgba(184, 202, 75, 0.2);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #155d43;
  font-weight: 800;
  box-shadow: 0 12px 30px rgba(9, 62, 45, 0.06);
}

.industry-subnav a.active,
.industry-subnav a:hover {
  border-color: rgba(40, 115, 79, 0.18);
  background: #093e2d;
  color: #fff;
}

.industry-subnav svg {
  width: 18px;
  height: 18px;
}

.industry-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 26px;
}

.industry-article-meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #155d43;
  box-shadow: 0 12px 28px rgba(9, 62, 45, 0.05);
}

.industry-article-meta b {
  color: #093e2d;
}

.industry-article-meta svg {
  width: 16px;
  height: 16px;
  color: #28734f;
}

.industry-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) 360px;
  gap: 28px;
  align-items: start;
}

.industry-manifesto {
  padding: 38px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 32px;
  background: radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.12), transparent 32%),
    linear-gradient(145deg, #ffffff, #f7fbff);
  box-shadow: 0 20px 60px rgba(9, 62, 45, 0.08);
}

.industry-manifesto p {
  margin: 0 0 10px;
  color: #28734f;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.industry-manifesto h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(32px, 3.5vw, 46px);
  line-height: 1.14;
  letter-spacing: -0.04em;
}

.industry-manifesto > span {
  display: block;
  margin-top: 18px;
  color: #155d43;
  font-size: 17px;
  line-height: 1.9;
}

.industry-signal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}

.industry-signal-grid article {
  padding: 20px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.9);
}

.industry-signal-grid strong {
  display: block;
  color: #093e2d;
  font-size: 20px;
  line-height: 1.3;
}

.industry-signal-grid span {
  display: block;
  margin-top: 10px;
  color: #28734f;
  line-height: 1.8;
}

.industry-note {
  padding: 30px;
  border-radius: 30px;
  background: radial-gradient(circle at 100% 0%, rgba(184, 202, 75, 0.24), transparent 34%),
    linear-gradient(180deg, #093e2d, #093e2d);
  color: #fff;
  box-shadow: 0 20px 62px rgba(9, 62, 45, 0.14);
}

.industry-note strong {
  display: block;
  font-size: 24px;
  line-height: 1.35;
}

.industry-note ul {
  display: grid;
  gap: 12px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.industry-note li {
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.7;
}

.industry-note-foot {
  margin-top: 20px;
  color: rgba(255, 255, 255, 0.66);
  line-height: 1.75;
}

.industry-story-section {
  background: radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.12), transparent 26%),
    linear-gradient(180deg, #f6f5ef 0%, #f8fbff 22%, #ffffff 100%);
}

.industry-story-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.industry-story-card {
  position: relative;
  min-height: 320px;
  margin: 0;
  overflow: hidden;
  border-radius: 30px;
  background: #093e2d;
  box-shadow: 0 24px 68px rgba(9, 62, 45, 0.16);
}

.industry-story-card.consulting {
  grid-column: 1 / span 7;
  min-height: 420px;
}

.industry-story-card.training {
  grid-column: 8 / span 5;
  min-height: 420px;
}

.industry-story-card.classroom {
  grid-column: 1 / span 5;
}

.industry-story-card.visit {
  grid-column: 6 / span 7;
}

.industry-story-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
  transition: transform 0.4s ease;
}

.industry-story-card:hover img {
  transform: scale(1.03);
}

.industry-story-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(9, 62, 45, 0.02), rgba(9, 62, 45, 0.1) 44%, rgba(9, 62, 45, 0.82) 100%);
}

.industry-story-card figcaption {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 20px;
  z-index: 1;
  display: grid;
  gap: 8px;
  color: #fff;
}

.industry-story-card figcaption span {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #edf2e8;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.industry-story-card strong {
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.2;
}

.industry-story-card small {
  color: rgba(255, 255, 255, 0.76);
  font-size: 14px;
  line-height: 1.75;
}

.industry-pillars-layout,
.industry-process-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1.12fr);
  gap: 46px;
  align-items: start;
}

.industry-pillars-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.industry-pillar {
  padding: 24px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 26px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 18px 46px rgba(9, 62, 45, 0.07);
}

.industry-pillar svg {
  width: 48px;
  height: 48px;
  padding: 11px;
  border-radius: 16px;
  background: rgba(40, 115, 79, 0.1);
  color: #28734f;
}

.industry-pillar small {
  display: block;
  margin-top: 18px;
  color: #28734f;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.industry-pillar h3 {
  margin: 10px 0 0;
  color: #093e2d;
  font-size: 24px;
  line-height: 1.28;
}

.industry-pillar p {
  margin: 12px 0 0;
  color: #28734f;
  line-height: 1.8;
}

.industry-feed {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.2), #ffffff);
}

.industry-cta .news-cta-inner {
  background: radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.22), transparent 30%),
    linear-gradient(120deg, #093e2d, #093e2d 60%, #155d43);
}

@media (max-width: 1180px) {
  .industry-hero-metrics,
  .industry-signal-grid,
  .industry-pillars-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .industry-overview-grid,
  .industry-pillars-layout,
  .industry-process-grid,
  .industry-story-grid {
    grid-template-columns: 1fr;
  }

  .industry-story-card.consulting,
  .industry-story-card.training,
  .industry-story-card.classroom,
  .industry-story-card.visit {
    grid-column: auto;
    min-height: 360px;
  }
}

@media (max-width: 720px) {
  .industry-hero-actions .btn,
  .industry-subnav a {
    width: 100%;
  }

  .industry-article-meta span {
    width: 100%;
    justify-content: flex-start;
  }

  .industry-hero-metrics,
  .industry-signal-grid,
  .industry-pillars-grid {
    grid-template-columns: 1fr;
  }

  .industry-hero-panel,
  .industry-manifesto,
  .industry-note,
  .industry-pillar {
    padding: 22px;
    border-radius: 24px;
  }

  .industry-manifesto h2,
  .industry-hero-panel h2 {
    font-size: 28px;
    letter-spacing: 0;
  }

  .industry-story-card,
  .industry-story-card.consulting,
  .industry-story-card.training,
  .industry-story-card.classroom,
  .industry-story-card.visit {
    min-height: 280px;
    border-radius: 22px;
  }

  .industry-story-card figcaption {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }

  .industry-story-card strong {
    font-size: 24px;
  }
}

/* ===== Public welfare page ===== */
.public-welfare-page {
  background: radial-gradient(circle at 8% 0%, rgba(184, 202, 75, 0.12), transparent 28%),
    radial-gradient(circle at 92% 4%, rgba(21, 93, 67, 0.1), transparent 28%),
    linear-gradient(180deg, #f6f5ef 0%, #ffffff 22%, #f7fbfa 100%);
}

.public-welfare-hero {
  background: #093e2d;
}

.public-welfare-hero .news-detail-hero-bg::after {
  background: radial-gradient(circle at 18% 22%, rgba(184, 202, 75, 0.46), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(21, 93, 67, 0.34), transparent 30%),
    linear-gradient(108deg, rgba(9, 62, 45, 0.96), rgba(9, 62, 45, 0.84) 48%, rgba(9, 62, 45, 0.48));
}

.public-welfare-hero-copy {
  max-width: 820px;
}

.public-welfare-hero h1,
.public-welfare-hero-panel h2,
.public-welfare-manifesto h2,
.public-welfare-pillar h3,
.public-welfare-page .news-section-head h2,
.public-welfare-page .news-cta-inner h2 {
  letter-spacing: 0;
}

.public-welfare-hero-panel p,
.public-welfare-manifesto p,
.public-welfare-note strong,
.public-welfare-story-card figcaption span,
.public-welfare-pillar small,
.public-welfare-page .news-section-head p,
.public-welfare-page .news-cta-inner p {
  letter-spacing: 0;
}

.public-welfare-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.public-welfare-light {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.public-welfare-light:hover {
  background: rgba(255, 255, 255, 0.18);
}

.public-welfare-hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 34px 0 0;
  padding: 0;
}

.public-welfare-hero-metrics div {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 22px;
  background: rgba(9, 62, 45, 0.34);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(14px);
}

.public-welfare-hero-metrics dt {
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
}

.public-welfare-hero-metrics dd {
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.76);
  line-height: 1.75;
}

.public-welfare-hero-panel {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
  box-shadow: 0 28px 82px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(18px);
}

.public-welfare-hero-panel p {
  margin: 0 0 10px;
  color: #edf2e8;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-welfare-hero-panel h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3vw, 34px);
  line-height: 1.2;
}

.public-welfare-hero-panel ul {
  display: grid;
  gap: 14px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.public-welfare-hero-panel li {
  padding: 16px 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  background: rgba(9, 62, 45, 0.28);
}

.public-welfare-hero-panel strong {
  display: block;
  color: #fff;
  font-size: 17px;
  line-height: 1.3;
}

.public-welfare-hero-panel span {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.75;
}

.public-welfare-panel-note {
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.66);
  font-size: 14px;
  line-height: 1.7;
}

.public-welfare-subnav,
.public-welfare-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.public-welfare-subnav {
  margin-bottom: 28px;
}

.public-welfare-subnav a,
.public-welfare-article-meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 16px;
  border: 1px solid rgba(184, 202, 75, 0.2);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #155d43;
  font-weight: 800;
  box-shadow: 0 12px 30px rgba(9, 62, 45, 0.06);
}

.public-welfare-subnav a.active,
.public-welfare-subnav a:hover {
  border-color: rgba(184, 202, 75, 0.28);
  background: var(--coral);
  color: #fff;
}

.public-welfare-subnav svg,
.public-welfare-article-meta svg {
  width: 18px;
  height: 18px;
}

.public-welfare-article-meta {
  margin-bottom: 26px;
}

.public-welfare-article-meta span {
  min-height: 42px;
  padding: 0 14px;
  color: #155d43;
  font-weight: 700;
}

.public-welfare-article-meta b {
  color: #093e2d;
}

.public-welfare-article-meta svg {
  color: var(--teal);
}

.public-welfare-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) 360px;
  gap: 28px;
  align-items: start;
}

.public-welfare-manifesto {
  padding: 38px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 32px;
  background: radial-gradient(circle at 100% 0%, rgba(21, 93, 67, 0.11), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(184, 202, 75, 0.08), transparent 32%),
    linear-gradient(145deg, #ffffff, #fffaf8);
  box-shadow: 0 20px 60px rgba(9, 62, 45, 0.08);
}

.public-welfare-manifesto p,
.public-welfare-pillar small,
.public-welfare-page .news-section-head p,
.public-welfare-page .news-cta-inner p {
  color: var(--coral);
}

.public-welfare-manifesto p {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-welfare-manifesto h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(32px, 3.5vw, 46px);
  line-height: 1.14;
}

.public-welfare-manifesto > span {
  display: block;
  margin-top: 18px;
  color: #155d43;
  font-size: 17px;
  line-height: 1.9;
}

.public-welfare-signal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}

.public-welfare-signal-grid article {
  padding: 20px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.92);
}

.public-welfare-signal-grid strong {
  display: block;
  color: #093e2d;
  font-size: 20px;
  line-height: 1.3;
}

.public-welfare-signal-grid span {
  display: block;
  margin-top: 10px;
  color: #28734f;
  line-height: 1.8;
}

.public-welfare-note {
  padding: 30px;
  border-radius: 30px;
  background: radial-gradient(circle at 100% 0%, rgba(184, 202, 75, 0.28), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(21, 93, 67, 0.22), transparent 36%),
    linear-gradient(180deg, #093e2d, #155d43);
  color: #fff;
  box-shadow: 0 20px 62px rgba(9, 62, 45, 0.14);
}

.public-welfare-note strong {
  display: block;
  font-size: 24px;
  line-height: 1.35;
}

.public-welfare-note ul {
  display: grid;
  gap: 12px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.public-welfare-note li {
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.7;
}

.public-welfare-note-foot {
  margin-top: 20px;
  color: rgba(255, 255, 255, 0.66);
  line-height: 1.75;
}

.public-welfare-story-section {
  background: radial-gradient(circle at 88% 0%, rgba(21, 93, 67, 0.12), transparent 28%),
    linear-gradient(180deg, #f6f5ef 0%, #ffffff 34%, #f7fbfa 100%);
}

.public-welfare-story-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.public-welfare-story-card {
  position: relative;
  min-height: 320px;
  margin: 0;
  overflow: hidden;
  border-radius: 30px;
  background: #093e2d;
  box-shadow: 0 24px 68px rgba(9, 62, 45, 0.16);
}

.public-welfare-story-card.community {
  grid-column: 1 / span 7;
  min-height: 420px;
}

.public-welfare-story-card.childcare {
  grid-column: 8 / span 5;
  min-height: 420px;
}

.public-welfare-story-card.eldercare {
  grid-column: 1 / span 4;
}

.public-welfare-story-card.donation {
  grid-column: 5 / span 4;
}

.public-welfare-story-card.sanitation {
  grid-column: 9 / span 4;
}

.public-welfare-story-card.rural {
  grid-column: 1 / span 12;
  min-height: 360px;
}

.public-welfare-story-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
  transition: transform 0.4s ease;
}

.public-welfare-story-card:hover img {
  transform: scale(1.03);
}

.public-welfare-story-card::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(180deg, rgba(9, 62, 45, 0.02), rgba(9, 62, 45, 0.08) 44%, rgba(9, 62, 45, 0.82) 100%);
}

.public-welfare-story-card figcaption {
  position: absolute;
  right: 22px;
  bottom: 20px;
  left: 22px;
  z-index: 1;
  display: grid;
  gap: 8px;
  color: #fff;
}

.public-welfare-story-card figcaption span {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #edf2e8;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-welfare-story-card strong {
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.2;
}

.public-welfare-story-card small {
  color: rgba(255, 255, 255, 0.78);
  font-size: 14px;
  line-height: 1.75;
}

.public-welfare-pillars-layout,
.public-welfare-process-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1.12fr);
  gap: 46px;
  align-items: start;
}

.public-welfare-pillars-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.public-welfare-pillar {
  padding: 24px;
  border: 1px solid rgba(184, 202, 75, 0.18);
  border-radius: 26px;
  background: linear-gradient(180deg, #ffffff, #fffaf8);
  box-shadow: 0 18px 46px rgba(9, 62, 45, 0.07);
}

.public-welfare-pillar svg {
  width: 48px;
  height: 48px;
  padding: 11px;
  border-radius: 16px;
  background: rgba(21, 93, 67, 0.1);
  color: var(--teal);
}

.public-welfare-pillar small {
  display: block;
  margin-top: 18px;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-welfare-pillar h3 {
  margin: 10px 0 0;
  color: #093e2d;
  font-size: 24px;
  line-height: 1.28;
}

.public-welfare-pillar p {
  margin: 12px 0 0;
  color: #28734f;
  line-height: 1.8;
}

.public-welfare-feed {
  background: linear-gradient(180deg, rgba(246, 245, 239, 0.74), #ffffff);
}

.public-welfare-cta .news-cta-inner {
  background: radial-gradient(circle at 100% 0%, rgba(184, 202, 75, 0.28), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(21, 93, 67, 0.24), transparent 32%),
    linear-gradient(120deg, #093e2d, #155d43 62%, #155d43);
}

@media (max-width: 1180px) {
  .public-welfare-hero-metrics,
  .public-welfare-signal-grid,
  .public-welfare-pillars-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-welfare-overview-grid,
  .public-welfare-pillars-layout,
  .public-welfare-process-grid,
  .public-welfare-story-grid {
    grid-template-columns: 1fr;
  }

  .public-welfare-story-card.community,
  .public-welfare-story-card.childcare,
  .public-welfare-story-card.eldercare,
  .public-welfare-story-card.donation,
  .public-welfare-story-card.sanitation,
  .public-welfare-story-card.rural {
    grid-column: auto;
    min-height: 360px;
  }
}

@media (max-width: 720px) {
  .public-welfare-hero-actions .btn,
  .public-welfare-subnav a {
    width: 100%;
  }

  .public-welfare-article-meta span {
    width: 100%;
    justify-content: flex-start;
  }

  .public-welfare-hero-metrics,
  .public-welfare-signal-grid,
  .public-welfare-pillars-grid {
    grid-template-columns: 1fr;
  }

  .public-welfare-hero-panel,
  .public-welfare-manifesto,
  .public-welfare-note,
  .public-welfare-pillar {
    padding: 22px;
    border-radius: 24px;
  }

  .public-welfare-manifesto h2,
  .public-welfare-hero-panel h2 {
    font-size: 28px;
  }

  .public-welfare-story-card,
  .public-welfare-story-card.community,
  .public-welfare-story-card.childcare,
  .public-welfare-story-card.eldercare,
  .public-welfare-story-card.donation,
  .public-welfare-story-card.sanitation,
  .public-welfare-story-card.rural {
    min-height: 280px;
    border-radius: 22px;
  }

  .public-welfare-story-card figcaption {
    right: 16px;
    bottom: 16px;
    left: 16px;
  }

  .public-welfare-story-card strong {
    font-size: 24px;
  }
}

/* ===== Live-in nanny detail page ===== */
.live-in-nanny-page {
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #f7faf9 44%, #ffffff 100%);
  color: var(--ink);
}

.live-in-nanny-hero {
  position: relative;
  overflow: hidden;
  min-height: 690px;
  background: #093e2d;
  color: #fff;
}

.live-in-nanny-hero-bg,
.live-in-nanny-hero-bg::after,
.live-in-nanny-hero-bg img {
  position: absolute;
  inset: 0;
}

.live-in-nanny-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.live-in-nanny-hero-bg::after {
  content: "";
  background: linear-gradient(90deg, rgba(9, 62, 45, 0.96) 0%, rgba(9, 62, 45, 0.82) 37%, rgba(9, 62, 45, 0.32) 72%, rgba(9, 62, 45, 0.08) 100%);
}

.live-in-nanny-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 48px;
  align-items: center;
  min-height: 690px;
  padding: 86px 0;
}

.live-in-nanny-hero-copy {
  max-width: 760px;
}

.live-in-nanny-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 18px;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 999px;
  background: rgba(255,255,255,0.12);
  color: #edf2e8;
  font-size: 14px;
  font-weight: 950;
}

.live-in-nanny-kicker svg {
  width: 18px;
  height: 18px;
}

.live-in-nanny-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(42px, 6vw, 74px);
  line-height: 1.05;
  font-weight: 950;
  letter-spacing: -0.04em;
}

.live-in-nanny-hero-copy > p:not(.live-in-nanny-kicker) {
  max-width: 660px;
  margin: 24px 0 0;
  color: rgba(255,255,255,0.8);
  font-size: 20px;
  line-height: 1.82;
}

.live-in-nanny-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.live-in-nanny-ghost {
  border-color: rgba(255,255,255,0.26);
  background: rgba(255,255,255,0.12);
  color: #fff;
}

.live-in-nanny-ghost:hover {
  background: rgba(255,255,255,0.18);
  color: #fff;
}

.live-in-nanny-hero-panel {
  padding: 26px;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 20px;
  background: rgba(9, 62, 45, 0.46);
  box-shadow: 0 28px 82px rgba(0,0,0,0.22);
  backdrop-filter: blur(18px);
}

.live-in-nanny-hero-panel strong {
  display: block;
  color: #fff;
  font-size: 22px;
  line-height: 1.35;
}

.live-in-nanny-hero-panel ul {
  display: grid;
  gap: 12px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.live-in-nanny-hero-panel li {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 60px;
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  background: rgba(255,255,255,0.08);
}

.live-in-nanny-hero-panel span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(40, 115, 79, 0.18);
  color: #d5e2cf;
  font-weight: 950;
}

.live-in-nanny-hero-panel b {
  color: rgba(255,255,255,0.9);
  line-height: 1.45;
}

.live-in-nanny-trust {
  border-bottom: 1px solid rgba(9, 62, 45, 0.06);
  background: #f7fbfa;
}

.live-in-nanny-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  padding: 24px 0;
}

.live-in-nanny-trust-grid div {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 3px 12px;
  align-items: center;
  min-width: 0;
}

.live-in-nanny-trust-grid svg {
  grid-row: span 2;
  width: 46px;
  height: 46px;
  padding: 11px;
  border-radius: 14px;
  background: #fff;
  color: #155d43;
  box-shadow: 0 10px 24px rgba(9, 62, 45, 0.06);
}

.live-in-nanny-trust-grid strong {
  color: #093e2d;
  font-size: 18px;
  line-height: 1.25;
}

.live-in-nanny-trust-grid span {
  color: #28734f;
  font-size: 14px;
  line-height: 1.45;
}

.live-in-nanny-section {
  padding: 78px 0;
}

.live-in-nanny-section-alt {
  background: radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.12), transparent 28%),
    linear-gradient(180deg, #f7fbfa 0%, #ffffff 100%);
}

.live-in-nanny-section-head {
  max-width: 820px;
  margin-bottom: 34px;
}

.live-in-nanny-section-head.left {
  margin-bottom: 28px;
}

.live-in-nanny-section-head p,
.live-in-nanny-boundary > div > p,
.live-in-nanny-cta-inner p {
  margin: 0 0 10px;
  color: #155d43;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.live-in-nanny-section-head h2,
.live-in-nanny-boundary h2,
.live-in-nanny-cta-inner h2 {
  margin: 0;
  color: #093e2d;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.16;
  letter-spacing: -0.035em;
}

.live-in-nanny-section-head span,
.live-in-nanny-cta-inner span {
  display: block;
  margin-top: 16px;
  color: #28734f;
  font-size: 17px;
  line-height: 1.9;
}

.live-in-nanny-fit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.live-in-nanny-fit-grid article,
.live-in-nanny-standard-grid article,
.live-in-nanny-flow-list li,
.live-in-nanny-boundary-grid article {
  border: 1px solid rgba(9, 62, 45, 0.08);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(9, 62, 45, 0.06);
}

.live-in-nanny-fit-grid article {
  padding: 24px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.live-in-nanny-fit-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.26);
  box-shadow: 0 22px 54px rgba(9, 62, 45, 0.11);
}

.live-in-nanny-fit-grid svg,
.live-in-nanny-standard-grid svg {
  width: 46px;
  height: 46px;
  padding: 10px;
  border-radius: 14px;
  background: rgba(21, 93, 67, 0.1);
  color: #155d43;
}

.live-in-nanny-fit-grid article:nth-child(2) svg,
.live-in-nanny-standard-grid article:nth-child(2) svg,
.live-in-nanny-standard-grid article:nth-child(5) svg {
  background: rgba(184, 202, 75, 0.1);
  color: var(--coral);
}

.live-in-nanny-fit-grid article:nth-child(3) svg,
.live-in-nanny-standard-grid article:nth-child(3) svg,
.live-in-nanny-standard-grid article:nth-child(6) svg {
  background: rgba(40, 115, 79, 0.12);
  color: #28734f;
}

.live-in-nanny-fit-grid article:nth-child(4) svg,
.live-in-nanny-standard-grid article:nth-child(4) svg {
  background: rgba(231, 121, 53, 0.11);
  color: #e77935;
}

.live-in-nanny-fit-grid h3,
.live-in-nanny-standard-grid h3 {
  margin: 18px 0 0;
  color: #093e2d;
  font-size: 22px;
  line-height: 1.25;
}

.live-in-nanny-fit-grid p,
.live-in-nanny-standard-grid p,
.live-in-nanny-boundary-grid span {
  margin: 12px 0 0;
  color: #28734f;
  line-height: 1.78;
}

.live-in-nanny-standard {
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  gap: 44px;
  align-items: center;
}

.live-in-nanny-photo-card {
  position: relative;
  min-height: 640px;
  margin: 0;
  overflow: hidden;
  border-radius: 18px;
  background: #093e2d;
  box-shadow: 0 26px 70px rgba(9, 62, 45, 0.14);
}

.live-in-nanny-photo-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.live-in-nanny-photo-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 46%, rgba(9, 62, 45, 0.82));
}

.live-in-nanny-photo-card figcaption {
  position: absolute;
  z-index: 1;
  right: 20px;
  bottom: 18px;
  left: 20px;
  display: grid;
  gap: 6px;
  color: #fff;
}

.live-in-nanny-photo-card strong {
  font-size: 24px;
  line-height: 1.2;
}

.live-in-nanny-photo-card span {
  color: rgba(255,255,255,0.74);
  line-height: 1.65;
}

.live-in-nanny-standard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.live-in-nanny-standard-grid article {
  padding: 22px;
}

.live-in-nanny-standard-grid h3 {
  margin-top: 16px;
  font-size: 20px;
}

.live-in-nanny-flow {
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  gap: 48px;
  align-items: start;
}

.live-in-nanny-flow .btn {
  margin-top: 26px;
}

.live-in-nanny-flow-list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.live-in-nanny-flow-list li {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 5px 18px;
  padding: 22px;
}

.live-in-nanny-flow-list b {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  background: #093e2d;
  color: #d5e2cf;
  font-size: 20px;
}

.live-in-nanny-flow-list strong {
  color: #093e2d;
  font-size: 22px;
  line-height: 1.25;
}

.live-in-nanny-flow-list span {
  color: #28734f;
  line-height: 1.75;
}

.live-in-nanny-boundary-section {
  padding-top: 0;
}

.live-in-nanny-boundary {
  display: grid;
  grid-template-columns: minmax(240px, 0.58fr) minmax(0, 1.42fr);
  gap: 28px;
  align-items: stretch;
  padding: 34px;
  border: 1px solid rgba(9, 62, 45, 0.08);
  border-radius: 18px;
  background: radial-gradient(circle at 0% 0%, rgba(184, 202, 75, 0.12), transparent 34%),
    linear-gradient(135deg, #ffffff, #f7fbfa);
  box-shadow: 0 22px 60px rgba(9, 62, 45, 0.08);
}

.live-in-nanny-boundary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.live-in-nanny-boundary-grid article {
  padding: 18px;
}

.live-in-nanny-boundary-grid strong {
  display: block;
  color: #093e2d;
  font-size: 18px;
  line-height: 1.35;
}

.live-in-nanny-boundary-grid span {
  display: block;
  font-size: 15px;
}

.live-in-nanny-cta {
  padding: 0 0 78px;
}

.live-in-nanny-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 38px;
  border-radius: 18px;
  background: radial-gradient(circle at 100% 0%, rgba(40, 115, 79, 0.22), transparent 30%),
    linear-gradient(120deg, #093e2d, #093e2d 58%, #155d43);
  color: #fff;
  box-shadow: 0 26px 72px rgba(9, 62, 45, 0.18);
}

.live-in-nanny-cta-inner h2 {
  color: #fff;
}

.live-in-nanny-cta-inner span {
  max-width: 760px;
  color: rgba(255,255,255,0.72);
}

.live-in-nanny-cta-inner p {
  color: #d5e2cf;
}

@media (max-width: 1180px) {
  .live-in-nanny-hero-inner,
  .live-in-nanny-standard,
  .live-in-nanny-flow,
  .live-in-nanny-boundary {
    grid-template-columns: 1fr;
  }

  .live-in-nanny-hero-panel {
    max-width: 680px;
  }

  .live-in-nanny-fit-grid,
  .live-in-nanny-trust-grid,
  .live-in-nanny-boundary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .live-in-nanny-photo-card {
    min-height: 520px;
  }
}

@media (max-width: 720px) {
  .live-in-nanny-page,
  .live-in-nanny-page section {
    overflow-x: hidden;
  }

  .live-in-nanny-hero,
  .live-in-nanny-hero-inner {
    min-height: auto;
  }

  .live-in-nanny-hero-bg img {
    object-position: 60% center;
  }

  .live-in-nanny-hero-bg::after {
    background: linear-gradient(90deg, rgba(9, 62, 45, 0.96), rgba(9, 62, 45, 0.82));
  }

  .live-in-nanny-hero-inner {
    gap: 28px;
    padding: 58px 0 64px;
  }

  .live-in-nanny-hero h1,
  .live-in-nanny-section-head h2,
  .live-in-nanny-boundary h2,
  .live-in-nanny-cta-inner h2 {
    font-size: 32px;
    letter-spacing: 0;
    overflow-wrap: anywhere;
    word-break: break-all;
  }

  .live-in-nanny-hero-copy > p:not(.live-in-nanny-kicker),
  .live-in-nanny-section-head span,
  .live-in-nanny-cta-inner span {
    font-size: 16px;
    overflow-wrap: anywhere;
    word-break: break-all;
  }

  .live-in-nanny-actions .btn,
  .live-in-nanny-cta-inner .btn {
    width: 100%;
  }

  .live-in-nanny-hero-panel,
  .live-in-nanny-boundary,
  .live-in-nanny-cta-inner {
    padding: 22px;
    border-radius: 16px;
  }

  .live-in-nanny-hero-panel {
    display: none;
  }

  .live-in-nanny-trust-grid,
  .live-in-nanny-fit-grid,
  .live-in-nanny-standard-grid,
  .live-in-nanny-boundary-grid {
    grid-template-columns: 1fr;
  }

  .live-in-nanny-section {
    padding: 54px 0;
  }

  .live-in-nanny-photo-card {
    min-height: 420px;
    border-radius: 14px;
  }

  .live-in-nanny-flow-list li {
    grid-template-columns: 1fr;
  }

  .live-in-nanny-flow-list b {
    grid-row: auto;
  }

  .live-in-nanny-cta {
    padding-bottom: 54px;
  }

  .live-in-nanny-cta-inner {
    display: grid;
  }
}

/* ===== Home storage service detail page ===== */
.home-storage-page,
.home-storage-page h1,
.home-storage-page h2,
.home-storage-page h3,
.home-storage-page p,
.home-storage-page span,
.home-storage-page a,
.home-storage-page strong,
.home-storage-page b {
  letter-spacing: 0;
}

.home-storage-page {
  overflow: hidden;
  background: #fffaf7;
  color: #093e2d;
}

.home-storage-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 620px;
  background: #093e2d;
  color: #fff;
}

.home-storage-hero-media,
.home-storage-hero-media::after,
.home-storage-hero-media img {
  position: absolute;
  inset: 0;
}

.home-storage-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 58% center;
}

.home-storage-hero-media::after {
  content: "";
  background: linear-gradient(90deg, rgba(11, 19, 16, 0.94) 0%, rgba(9, 62, 45, 0.82) 44%, rgba(9, 62, 45, 0.24) 100%);
}

.home-storage-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  align-items: end;
  gap: 56px;
  min-height: 620px;
  padding: 72px 0 78px;
}

.home-storage-hero-copy {
  max-width: 780px;
}

.home-storage-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,0.26);
  border-radius: 999px;
  background: rgba(255,255,255,0.12);
  color: #edf2e8;
  font-weight: 900;
}

.home-storage-kicker svg {
  width: 18px;
  height: 18px;
}

.home-storage-hero h1 {
  margin: 0;
  max-width: 780px;
  font-size: 56px;
  line-height: 1.08;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.home-storage-hero-copy > p:not(.home-storage-kicker) {
  max-width: 680px;
  margin: 24px 0 0;
  color: rgba(255,255,255,0.82);
  font-size: 18px;
  line-height: 1.9;
}

.home-storage-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}

.home-storage-hero .btn.primary,
.home-storage-page .btn.primary {
  border: 0;
  background: linear-gradient(135deg, #28734f, #155d43);
  box-shadow: 0 16px 38px rgba(21, 93, 67, 0.22);
}

.home-storage-ghost {
  border-color: rgba(255,255,255,0.32);
  background: rgba(255,255,255,0.12);
  color: #fff;
  backdrop-filter: blur(10px);
}

.home-storage-ghost:hover {
  background: rgba(255,255,255,0.2);
  color: #fff;
}

.home-storage-hero-panel {
  padding: 26px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 8px;
  background: rgba(9, 62, 45, 0.72);
  box-shadow: 0 24px 70px rgba(0,0,0,0.28);
  backdrop-filter: blur(12px);
}

.home-storage-hero-panel strong {
  display: block;
  color: #fff;
  font-size: 22px;
  line-height: 1.35;
}

.home-storage-hero-panel ul {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.home-storage-hero-panel li {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.home-storage-hero-panel span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: rgba(237, 242, 232, 0.14);
  color: #edf2e8;
  font-weight: 950;
}

.home-storage-hero-panel b {
  color: rgba(255,255,255,0.9);
  line-height: 1.45;
}

.home-storage-trust {
  border-bottom: 1px solid rgba(9, 62, 45, 0.07);
  background: #fff;
}

.home-storage-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
}

.home-storage-trust-grid div {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 10px 14px;
  align-items: center;
  min-height: 128px;
  padding: 26px 22px;
  background: #fff;
}

.home-storage-trust-grid svg {
  grid-row: span 2;
  width: 46px;
  height: 46px;
  padding: 11px;
  border-radius: 8px;
  background: #f6f5ef;
  color: #155d43;
}

.home-storage-trust-grid div:nth-child(2) svg {
  background: #f6f5ef;
  color: #28734f;
}

.home-storage-trust-grid div:nth-child(3) svg {
  background: #f6f5ef;
  color: #28734f;
}

.home-storage-trust-grid div:nth-child(4) svg {
  background: #edf2e8;
  color: #e77935;
}

.home-storage-trust-grid strong {
  color: #093e2d;
  font-size: 18px;
}

.home-storage-trust-grid span {
  color: #28734f;
  font-size: 14px;
  line-height: 1.55;
}

.home-storage-subnav {
  position: sticky;
  top: 80px;
  z-index: 40;
  border-bottom: 1px solid rgba(9, 62, 45, 0.08);
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(12px);
}

.home-storage-subnav .container {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-top: 12px;
  padding-bottom: 12px;
  scrollbar-width: thin;
}

.home-storage-subnav a {
  flex: 0 0 auto;
  min-height: 42px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #f4f7f4;
  color: #28734f;
  font-weight: 900;
}

.home-storage-subnav a:hover {
  background: #093e2d;
  color: #fff;
}

.home-storage-section {
  padding: 78px 0;
  background: #fff;
}

.home-storage-section-alt {
  background: #f5faf8;
}

.home-storage-section-head {
  max-width: 850px;
  margin: 0 auto 34px;
  text-align: center;
}

.home-storage-section-head.left {
  margin-right: 0;
  margin-left: 0;
  text-align: left;
}

.home-storage-section-head p,
.home-storage-standard > div > p,
.home-storage-local-copy p,
.home-storage-cta-inner p {
  margin: 0 0 10px;
  color: #155d43;
  font-weight: 950;
}

.home-storage-section-head h2,
.home-storage-standard h2,
.home-storage-local-copy h2,
.home-storage-cta-inner h2 {
  margin: 0;
  color: #093e2d;
  font-size: 46px;
  line-height: 1.16;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.home-storage-section-head span,
.home-storage-local-copy span,
.home-storage-cta-inner span {
  display: block;
  margin-top: 16px;
  color: #28734f;
  font-size: 17px;
  line-height: 1.85;
}

.home-storage-fit-grid,
.home-storage-service-grid {
  display: grid;
  gap: 18px;
}

.home-storage-fit-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-storage-fit-grid article,
.home-storage-service-grid article,
.home-storage-flow-list li,
.home-storage-standard-grid article {
  border: 1px solid rgba(9, 62, 45, 0.08);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(9, 62, 45, 0.05);
}

.home-storage-fit-grid article,
.home-storage-service-grid article {
  padding: 24px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.home-storage-fit-grid article:hover,
.home-storage-service-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.24);
  box-shadow: 0 24px 58px rgba(9, 62, 45, 0.08);
}

.home-storage-fit-grid svg,
.home-storage-service-grid svg {
  width: 46px;
  height: 46px;
  padding: 11px;
  border-radius: 8px;
  background: #f6f5ef;
  color: #155d43;
}

.home-storage-fit-grid article:nth-child(2) svg,
.home-storage-service-grid article:nth-child(2) svg,
.home-storage-service-grid article:nth-child(5) svg {
  background: #f6f5ef;
  color: #28734f;
}

.home-storage-fit-grid article:nth-child(3) svg,
.home-storage-service-grid article:nth-child(3) svg,
.home-storage-service-grid article:nth-child(6) svg {
  background: #f6f5ef;
  color: #28734f;
}

.home-storage-fit-grid article:nth-child(4) svg,
.home-storage-service-grid article:nth-child(4) svg {
  background: #edf2e8;
  color: #e77935;
}

.home-storage-fit-grid h3,
.home-storage-service-grid h3 {
  margin: 18px 0 0;
  color: #093e2d;
  font-size: 22px;
  line-height: 1.25;
}

.home-storage-fit-grid p,
.home-storage-service-grid p,
.home-storage-standard-grid span {
  margin: 12px 0 0;
  color: #28734f;
  line-height: 1.75;
}

.home-storage-service {
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  gap: 44px;
  align-items: center;
}

.home-storage-photo-card {
  position: relative;
  overflow: hidden;
  min-height: 620px;
  margin: 0;
  border-radius: 8px;
  background: #093e2d;
  box-shadow: 0 28px 72px rgba(9, 62, 45, 0.16);
}

.home-storage-photo-card img,
.home-storage-local-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.home-storage-photo-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 46%;
  background: linear-gradient(180deg, transparent, rgba(9, 62, 45, 0.86));
}

.home-storage-photo-card figcaption {
  position: absolute;
  z-index: 1;
  left: 22px;
  right: 22px;
  bottom: 22px;
  color: #fff;
}

.home-storage-photo-card strong {
  display: block;
  font-size: 24px;
  line-height: 1.25;
}

.home-storage-photo-card span {
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,0.78);
  line-height: 1.7;
}

.home-storage-service-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-storage-flow {
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.home-storage-flow .btn {
  margin-top: 26px;
}

.home-storage-flow-content {
  display: grid;
  gap: 18px;
}

.home-storage-flow-content img {
  width: 100%;
  min-height: 320px;
  max-height: 420px;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 24px 60px rgba(9, 62, 45, 0.12);
}

.home-storage-flow-list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-storage-flow-list li {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 8px 18px;
  padding: 20px;
}

.home-storage-flow-list b {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 8px;
  background: #f6f5ef;
  color: #155d43;
  font-size: 20px;
}

.home-storage-flow-list strong {
  color: #093e2d;
  font-size: 22px;
  line-height: 1.25;
}

.home-storage-flow-list span {
  color: #28734f;
  line-height: 1.75;
}

.home-storage-standard-section {
  background: #093e2d;
  color: #fff;
}

.home-storage-standard {
  display: grid;
  grid-template-columns: minmax(240px, 0.58fr) minmax(0, 1.42fr);
  gap: 42px;
  align-items: start;
}

.home-storage-standard h2,
.home-storage-cta-inner h2 {
  color: #fff;
}

.home-storage-standard > div > p,
.home-storage-cta-inner p {
  color: #edf2e8;
}

.home-storage-standard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.home-storage-standard-grid article {
  padding: 22px;
  border-color: rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.08);
  box-shadow: none;
}

.home-storage-standard-grid strong {
  display: block;
  color: #fff;
  font-size: 22px;
}

.home-storage-standard-grid span {
  display: block;
  color: rgba(255,255,255,0.72);
}

.home-storage-local {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 1.08fr);
  gap: 42px;
  align-items: center;
}

.home-storage-local-copy h2 {
  max-width: 720px;
}

.home-storage-local-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.home-storage-local-photo {
  overflow: hidden;
  min-height: 420px;
  margin: 0;
  border-radius: 8px;
  box-shadow: 0 24px 64px rgba(9, 62, 45, 0.13);
}

.home-storage-cta {
  padding: 0 0 78px;
  background: #fff;
}

.home-storage-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 34px;
  border-radius: 8px;
  background: #093e2d;
  color: #fff;
}

.home-storage-cta-inner span {
  max-width: 760px;
  color: rgba(255,255,255,0.74);
}

.home-storage-page .related-section {
  background: #fff;
}

@media (max-width: 1180px) {
  .home-storage-hero-inner,
  .home-storage-service,
  .home-storage-flow,
  .home-storage-standard,
  .home-storage-local {
    grid-template-columns: 1fr;
  }

  .home-storage-hero-panel {
    max-width: 680px;
  }

  .home-storage-fit-grid,
  .home-storage-trust-grid,
  .home-storage-standard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-storage-photo-card {
    min-height: 520px;
  }

  .home-storage-local-photo {
    min-height: 360px;
  }
}

@media (max-width: 720px) {
  .home-storage-page,
  .home-storage-page section {
    overflow-x: hidden;
  }

  .home-storage-hero,
  .home-storage-hero-inner {
    min-height: auto;
  }

  .home-storage-hero-media img {
    object-position: 64% center;
  }

  .home-storage-hero-media::after {
    background: linear-gradient(90deg, rgba(11, 19, 16, 0.96), rgba(9, 62, 45, 0.8));
  }

  .home-storage-hero-inner {
    gap: 28px;
    padding: 58px 0 64px;
  }

  .home-storage-hero h1,
  .home-storage-section-head h2,
  .home-storage-standard h2,
  .home-storage-local-copy h2,
  .home-storage-cta-inner h2 {
    font-size: 32px;
    line-height: 1.18;
    overflow-wrap: anywhere;
    word-break: break-all;
  }

  .home-storage-hero-copy > p:not(.home-storage-kicker),
  .home-storage-section-head span,
  .home-storage-local-copy span,
  .home-storage-cta-inner span {
    font-size: 16px;
    overflow-wrap: anywhere;
    word-break: break-all;
  }

  .home-storage-actions .btn,
  .home-storage-local-actions .btn,
  .home-storage-cta-inner .btn {
    width: 100%;
    min-width: 0;
  }

  .home-storage-hero-panel {
    display: none;
  }

  .home-storage-subnav {
    top: 72px;
  }

  .home-storage-trust-grid,
  .home-storage-fit-grid,
  .home-storage-service-grid,
  .home-storage-standard-grid {
    grid-template-columns: 1fr;
  }

  .home-storage-trust-grid div {
    min-height: auto;
    padding: 20px;
  }

  .home-storage-section {
    padding: 54px 0;
  }

  .home-storage-photo-card {
    min-height: 420px;
  }

  .home-storage-flow-list li {
    grid-template-columns: 1fr;
  }

  .home-storage-flow-list b {
    grid-row: auto;
  }

  .home-storage-local-photo {
    min-height: 280px;
  }

  .home-storage-cta {
    padding-bottom: 54px;
  }

  .home-storage-cta-inner {
    display: grid;
    padding: 24px;
  }
}

/* ===== Family care consulting detail page ===== */
.care-consulting-page {
  background: radial-gradient(circle at 0% 0%, rgba(184, 202, 75, 0.08), transparent 28%),
    radial-gradient(circle at 100% 3%, rgba(21, 93, 67, 0.08), transparent 30%),
    linear-gradient(180deg, #f7faf7 0%, #fff 28%, #f6f8fb 100%);
}

.care-consulting-page h1,
.care-consulting-page h2,
.care-consulting-page h3,
.care-consulting-page p,
.care-consulting-page span,
.care-consulting-page a,
.care-consulting-page small {
  letter-spacing: 0;
}

.care-consulting-hero {
  background: #093e2d;
}

.care-consulting-hero::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  background: radial-gradient(circle at 12% 28%, rgba(184, 202, 75, 0.22), transparent 26%),
    linear-gradient(100deg, rgba(9, 62, 45, 0.86), rgba(9, 62, 45, 0.62) 43%, rgba(9, 62, 45, 0.18) 74%);
  pointer-events: none;
}

.care-consulting-hero > img {
  object-position: center;
  filter: saturate(1.03) contrast(1.02);
}

.care-consulting-kicker {
  color: #fff;
}

.care-consulting-hero h1 {
  max-width: 820px;
  text-wrap: balance;
}

.care-consulting-hero .btn.primary,
.care-consulting-page .btn.primary {
  border: 0;
  background: linear-gradient(135deg, var(--coral), #b8ca4b);
  color: #fff;
  box-shadow: 0 18px 40px rgba(184, 202, 75, 0.22);
}

.care-consulting-hero .btn.outline {
  border-color: rgba(255, 255, 255, 0.32);
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.care-consulting-metrics > div {
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.12);
}

.care-consulting-anchor {
  position: relative;
  z-index: 4;
}

.care-consulting-anchor .container {
  scrollbar-width: thin;
}

.care-consulting-anchor a {
  transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.care-consulting-anchor a:hover {
  transform: translateY(-1px);
}

.care-consulting-section {
  position: relative;
}

.care-consulting-section h2 {
  color: #093e2d;
  line-height: 1.16;
  text-wrap: balance;
}

.care-consulting-section article,
.care-consulting-section [class*="rounded-[2rem]"],
.care-consulting-section [class*="rounded-[2.2rem]"],
.care-consulting-section [class*="rounded-3xl"] {
  border-radius: 22px;
}

.care-consulting-section img {
  filter: saturate(1.02) contrast(1.01);
}

.care-consulting-section [class*="text-[#3f6e62]"],
.care-consulting-section [class*="text-[#6f8f65]"] {
  color: var(--teal);
}

.care-consulting-section [class*="bg-[#192421]"] {
  background: linear-gradient(145deg, #093e2d, #093e2d);
}

.care-consulting-section [class*="bg-[#f7faf5]"],
.care-consulting-section [class*="bg-[#f4f7f4]"] {
  background: #f8fafc;
}

.care-consulting-section [class*="ring-[#dbe4d7]"] {
  border: 1px solid rgba(184, 202, 75, 0.18);
  box-shadow: 0 16px 44px rgba(9, 62, 45, 0.06);
  --tw-ring-shadow: 0 0 #0000;
}

.care-consulting-section ul {
  padding-left: 0;
  list-style: none;
}

.care-consulting-section li {
  position: relative;
  padding-left: 18px;
}

.care-consulting-section li::before {
  position: absolute;
  top: 0.78em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--coral);
  content: "";
}

.care-consulting-section .grid > article:hover {
  transform: translateY(-3px);
}

.care-consulting-page .related-section {
  background: #f8fafc;
}

@media (max-width: 720px) {
  .care-consulting-hero .container {
    min-height: auto;
    padding-top: 44px;
    padding-bottom: 56px;
  }

  .care-consulting-hero h1 {
    font-size: 34px;
    line-height: 1.16;
    word-break: normal;
    overflow-wrap: anywhere;
  }

  .care-consulting-hero p {
    word-break: normal;
    overflow-wrap: anywhere;
  }

  .care-consulting-metrics {
    grid-template-columns: 1fr;
  }

  .care-consulting-page .btn {
    width: 100%;
    min-width: 0;
  }

  .care-consulting-anchor .container {
    width: min(100% - 28px, var(--max));
  }

  .care-consulting-section {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .care-consulting-section h2 {
    font-size: 28px;
  }

  .care-consulting-section .flex {
    min-width: 0;
  }
}

/* ===== Principal message page ===== */
.principal-message-section .content-panel {
  background: radial-gradient(circle at 8% 0%, rgba(184, 202, 75, 0.12), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(40, 115, 79, 0.13), transparent 40%),
    #fff;
  border: 1px solid var(--line);
  border-radius: 30px;
  box-shadow: 0 18px 56px rgba(9, 62, 45, 0.08);
}

.principal-message-card {
  display: grid;
  grid-template-columns: minmax(260px, 420px) minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

.principal-message-figure {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(9, 62, 45, 0.1);
}

.principal-message-figure img {
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

.principal-message-figure figcaption {
  display: grid;
  gap: 4px;
  padding: 14px 18px;
  background: linear-gradient(180deg, #fff, #fff8f8);
}

.principal-message-figure figcaption strong {
  font-size: 22px;
  color: var(--ink);
}

.principal-message-figure figcaption span {
  color: var(--muted);
  font-size: 14px;
}

.principal-message-kicker {
  display: inline-flex;
  margin: 0;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--coral-soft);
  color: var(--coral);
  font-weight: 900;
  letter-spacing: 0.08em;
  font-size: 12px;
}

.principal-message-body h2 {
  margin: 14px 0 12px;
  color: var(--ink);
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.principal-message-lead {
  margin-top: 0;
  color: #155d43;
  font-weight: 700;
}

.principal-message-body p {
  color: #155d43;
  line-height: 1.9;
}

.principal-message-body h3 {
  margin: 24px 0 12px;
  font-size: 24px;
  color: var(--ink);
}

.principal-message-list {
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.principal-message-list li {
  position: relative;
  padding: 14px 16px 14px 44px;
  border: 1px solid rgba(184, 202, 75, 0.2);
  border-radius: 14px;
  background: #fff;
  color: #155d43;
}

.principal-message-list li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 17px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--coral), #b8ca4b);
  box-shadow: 0 0 0 4px rgba(184, 202, 75, 0.14);
}

.principal-message-signoff {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px dashed #d5e2cf;
}

.principal-message-signoff p {
  margin: 0;
  font-weight: 800;
  color: #093e2d;
}

.principal-message-signoff time {
  display: inline-block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 14px;
}

.principal-message-actions {
  margin-top: 26px;
}

@media (max-width: 980px) {
  .principal-message-card {
    grid-template-columns: 1fr;
  }

  .principal-message-figure {
    max-width: 420px;
    margin: 0 auto;
  }
}

@media (max-width: 720px) {
  .principal-message-section .content-panel {
    border-radius: 22px;
  }

  .principal-message-card {
    gap: 22px;
  }

  .principal-message-body h2 {
    font-size: 30px;
    letter-spacing: 0;
    word-break: break-all;
    overflow-wrap: anywhere;
  }

  .principal-message-body h3 {
    font-size: 22px;
  }
}

/* ===== Principal page full-width background ===== */
.principal-page {
  background: radial-gradient(1280px 520px at 50% -140px, rgba(184, 202, 75, 0.24), transparent 60%),
    linear-gradient(180deg, #edf2e8 0%, #edf2e8 45%, #edf2e8 100%);
}

.principal-page main {
  position: relative;
  isolation: isolate;
}

.principal-page main::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(940px 420px at 12% 36%, rgba(255,255,255,0.30), transparent 72%),
    radial-gradient(840px 400px at 88% 42%, rgba(255,255,255,0.22), transparent 70%),
    linear-gradient(180deg, rgba(40, 115, 79, 0.08), rgba(40, 115, 79, 0.04));
}

/* ===== Principal message premium (v3) ===== */
.principal-message-premium .content-panel {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(1300px 560px at -14% -20%, rgba(255,255,255,0.24), transparent 64%),
    radial-gradient(820px 430px at 108% 114%, rgba(237, 242, 232, 0.22), transparent 62%),
    linear-gradient(142deg, #093e2d 0%, #093e2d 42%, #155d43 72%, #155d43 100%);
  border: 1px solid rgba(255,255,255,0.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24),
    inset 0 -1px 0 rgba(255,255,255,0.08),
    0 32px 88px rgba(9, 62, 45, 0.34);
}

.principal-message-premium .content-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: linear-gradient(116deg, rgba(255,255,255,0.14) 0%, rgba(255,255,255,0) 40%),
    radial-gradient(520px 240px at 20% 10%, rgba(255,255,255,0.12), transparent 74%);
}

.principal-message-premium .content-panel::after {
  content: "";
  position: absolute;
  inset: -110px -90px auto auto;
  width: 400px;
  height: 400px;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(circle, rgba(255,255,255,0.14) 0%, rgba(255,255,255,0) 72%);
  filter: blur(8px);
}

.principal-message-premium .principal-message-card {
  position: relative;
  z-index: 1;
}

.principal-message-premium .principal-message-figure {
  border-color: rgba(255,255,255,0.22);
  box-shadow: 0 20px 54px rgba(9, 62, 45, 0.45);
}

.principal-message-premium .principal-message-figure figcaption {
  background: linear-gradient(180deg, #093e2d, #093e2d);
}

.principal-message-premium .principal-message-figure figcaption strong {
  color: #fff;
}

.principal-message-premium .principal-message-figure figcaption span {
  color: rgba(255,255,255,0.75);
}

.principal-message-premium .principal-message-body {
  padding: 28px 30px;
  border: 1px solid rgba(255,255,255,0.38);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,0.985), rgba(255,255,255,0.93));
  backdrop-filter: blur(10px) saturate(128%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.92),
    inset 0 -1px 0 rgba(255,255,255,0.48),
    0 18px 42px rgba(9, 62, 45, 0.20);
}

.principal-message-premium .principal-message-kicker {
  background: rgba(184, 202, 75, 0.13);
}

.principal-message-premium .principal-message-list li {
  background: linear-gradient(180deg, #fff, #f6f5ef);
}

@media (max-width: 720px) {
  .principal-message-premium .principal-message-body {
    padding: 20px;
  }
}

/* ===== Campus environment detail page ===== */
.campus-page {
  background: #f7f8fa;
  color: #093e2d;
}

.campus-page .btn {
  min-height: 48px;
  border-radius: 8px;
  font-weight: 900;
}

.campus-hero {
  position: relative;
  overflow: hidden;
  min-height: 690px;
  background: #093e2d;
  color: #fff;
}

.campus-hero-bg,
.campus-hero-bg::after,
.campus-hero-bg img {
  position: absolute;
  inset: 0;
}

.campus-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.04) contrast(1.05);
}

.campus-hero-bg::after {
  content: "";
  background: linear-gradient(105deg, rgba(9, 62, 45, 0.96) 0%, rgba(9, 62, 45, 0.88) 44%, rgba(9, 62, 45, 0.38) 100%),
    linear-gradient(0deg, rgba(9, 62, 45, 0.72), rgba(9, 62, 45, 0.04) 44%);
}

.campus-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 54px;
  align-items: center;
  min-height: 690px;
  padding: 86px 0;
}

.campus-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
  color: rgba(255,255,255,0.72);
  font-size: 14px;
}

.campus-breadcrumb a {
  color: rgba(255,255,255,0.88);
}

.campus-breadcrumb span::before {
  content: "/";
  margin-right: 10px;
  color: rgba(255,255,255,0.35);
}

.campus-kicker {
  margin: 0;
  color: #b8ca4b;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.campus-hero h1,
.campus-section-heading h2,
.campus-tour-copy h2,
.campus-standards h2,
.campus-cta h2 {
  margin: 0;
  letter-spacing: 0;
  line-height: 1.12;
}

.campus-hero h1 {
  max-width: 760px;
  margin-top: 16px;
  font-size: clamp(44px, 6vw, 78px);
  font-weight: 950;
}

.campus-hero-text {
  max-width: 720px;
  margin: 24px 0 0;
  color: rgba(255,255,255,0.84);
  font-size: 20px;
  line-height: 1.85;
}

.campus-hero-actions,
.campus-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.campus-hero .btn.outline,
.campus-cta .btn.outline {
  border-color: rgba(255,255,255,0.28);
  background: rgba(255,255,255,0.08);
  color: #fff;
}

.campus-hero-phone {
  white-space: nowrap;
}

.campus-hero-panel {
  display: grid;
  gap: 16px;
}

.campus-hero-panel figure {
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 8px;
  background: rgba(255,255,255,0.12);
  box-shadow: 0 26px 80px rgba(0,0,0,0.24);
  backdrop-filter: blur(14px);
}

.campus-hero-panel img {
  width: 100%;
  height: 250px;
  object-fit: cover;
}

.campus-hero-panel figcaption {
  padding: 14px 16px;
  color: rgba(255,255,255,0.86);
  font-weight: 900;
}

.campus-overview,
.campus-tour,
.campus-gallery-section,
.campus-standards,
.campus-cta {
  padding: 86px 0;
}

.campus-section-heading {
  max-width: 840px;
  margin-bottom: 34px;
}

.campus-section-heading h2,
.campus-tour-copy h2,
.campus-standards h2,
.campus-cta h2 {
  margin-top: 12px;
  color: #093e2d;
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 950;
}

.campus-section-heading p:not(.campus-kicker),
.campus-tour-copy > p,
.campus-standards p,
.campus-cta p {
  margin: 18px 0 0;
  color: #28734f;
  font-size: 17px;
  line-height: 1.85;
}

.campus-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.campus-feature-grid article,
.campus-standard-list article {
  border: 1px solid #edf2e8;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(9, 62, 45, 0.08);
}

.campus-feature-grid article {
  padding: 26px;
}

.campus-feature-grid i {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 8px;
  background: #f6f5ef;
  color: var(--coral);
  font-size: 21px;
}

.campus-feature-grid h3,
.campus-route-list h3,
.campus-standard-list h3 {
  margin: 18px 0 0;
  color: #093e2d;
  font-size: 20px;
  font-weight: 950;
}

.campus-feature-grid p,
.campus-route-list p,
.campus-standard-list p {
  margin: 10px 0 0;
  color: #28734f;
  font-size: 15px;
  line-height: 1.78;
}

.campus-tour {
  background: linear-gradient(180deg, #fff, #f8fafc);
}

.campus-tour-layout,
.campus-standards-layout,
.campus-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 42px;
  align-items: center;
}

.campus-route-list {
  display: grid;
  gap: 14px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.campus-route-list li {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 18px;
  border: 1px solid #edf2e8;
  border-radius: 8px;
  background: #fff;
}

.campus-route-list span {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 8px;
  background: #093e2d;
  color: #fff;
  font-weight: 950;
}

.campus-route-list h3 {
  margin-top: 0;
}

.campus-tour-media {
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
  background: #093e2d;
  box-shadow: 0 30px 80px rgba(9, 62, 45, 0.18);
}

.campus-tour-media img {
  width: 100%;
  height: 560px;
  object-fit: cover;
}

.campus-tour-media figcaption {
  padding: 18px 22px;
  color: rgba(255,255,255,0.82);
  font-size: 15px;
}

.campus-gallery-section {
  background: #f6f5ef;
}

.campus-gallery {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 230px;
  gap: 16px;
}

.campus-gallery-item {
  position: relative;
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
  background: #093e2d;
  box-shadow: 0 18px 42px rgba(9, 62, 45, 0.16);
}

.campus-gallery-item.is-large {
  grid-column: span 2;
  grid-row: span 2;
}

.campus-gallery-item.is-tall {
  grid-row: span 2;
}

.campus-gallery-item button {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: zoom-in;
}

.campus-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease, filter 0.5s ease;
}

.campus-gallery-item:hover img,
.campus-gallery-item:focus-within img {
  transform: scale(1.04);
  filter: saturate(1.08);
}

.campus-gallery-item figcaption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 30px 18px 16px;
  background: linear-gradient(0deg, rgba(9, 62, 45, 0.88), rgba(9, 62, 45, 0));
  color: #fff;
  font-weight: 950;
  pointer-events: none;
}

.campus-standards {
  background: linear-gradient(135deg, #093e2d 0%, #093e2d 58%, #093e2d 100%);
  color: #fff;
}

.campus-standards .campus-kicker,
.campus-cta .campus-kicker {
  color: #d5e2cf;
}

.campus-standards h2,
.campus-standards p,
.campus-cta h2,
.campus-cta p {
  color: #fff;
}

.campus-standards p,
.campus-cta p {
  color: rgba(255,255,255,0.78);
}

.campus-standard-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.campus-standard-list article {
  padding: 24px;
  border-color: rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.08);
  box-shadow: none;
}

.campus-standard-list h3 {
  margin-top: 0;
  color: #fff;
}

.campus-standard-list p {
  color: rgba(255,255,255,0.74);
}

.campus-cta {
  position: relative;
  overflow: hidden;
  background: #093e2d;
}

.campus-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(9, 62, 45, 0.98), rgba(9, 62, 45, 0.82) 48%, rgba(9, 62, 45, 0.58)),
    url("/assets/campus-environment/campus-environment-08.png") center / cover;
}

.campus-cta-inner {
  position: relative;
  z-index: 1;
}

.campus-cta-actions {
  justify-content: flex-end;
  margin-top: 0;
}

.campus-related {
  background: #fff;
}

.campus-lightbox-open {
  overflow: hidden;
}

.campus-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 28px;
  background: rgba(9, 62, 45, 0.92);
}

.campus-lightbox[hidden] {
  display: none;
}

.campus-lightbox figure {
  width: min(1120px, 100%);
  max-height: calc(100vh - 72px);
  margin: 0;
}

.campus-lightbox img {
  width: 100%;
  max-height: calc(100vh - 130px);
  object-fit: contain;
  border-radius: 8px;
  background: #093e2d;
  box-shadow: 0 34px 110px rgba(0,0,0,0.5);
}

.campus-lightbox figcaption {
  margin-top: 14px;
  color: #fff;
  text-align: center;
  font-weight: 900;
}

.campus-lightbox-close {
  position: fixed;
  top: 20px;
  right: 20px;
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 8px;
  background: rgba(255,255,255,0.1);
  color: #fff;
  cursor: pointer;
}

.campus-lightbox-close svg {
  width: 22px;
  height: 22px;
}

@media (max-width: 1120px) {
  .campus-hero-inner,
  .campus-tour-layout,
  .campus-standards-layout,
  .campus-cta-inner {
    grid-template-columns: 1fr;
  }

  .campus-hero-panel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .campus-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .campus-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .campus-cta-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .campus-hero {
    min-height: auto;
  }

  .campus-hero-inner {
    min-height: auto;
    padding: 54px 0 64px;
  }

  .campus-hero h1 {
    font-size: 38px;
  }

  .campus-hero-text,
  .campus-section-heading p:not(.campus-kicker),
  .campus-tour-copy > p,
  .campus-standards p,
  .campus-cta p {
    font-size: 16px;
    line-height: 1.78;
  }

  .campus-hero-actions,
  .campus-cta-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .campus-hero-panel,
  .campus-feature-grid,
  .campus-standard-list,
  .campus-gallery {
    grid-template-columns: 1fr;
  }

  .campus-hero-panel img {
    height: 210px;
  }

  .campus-overview,
  .campus-tour,
  .campus-gallery-section,
  .campus-standards,
  .campus-cta {
    padding: 58px 0;
  }

  .campus-route-list li {
    grid-template-columns: 48px minmax(0, 1fr);
    padding: 16px;
  }

  .campus-tour-media img {
    height: 320px;
  }

  .campus-gallery {
    grid-auto-rows: 240px;
  }

  .campus-gallery-item.is-large,
  .campus-gallery-item.is-tall {
    grid-column: auto;
    grid-row: auto;
  }

  .campus-lightbox {
    padding: 18px;
  }

  .campus-lightbox-close {
    top: 12px;
    right: 12px;
  }
}
.org-function-grid-wide{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:800px){.org-function-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}}
.employment-redesign{--ep-green: #155d43;--ep-deep: #093e2d;--ep-orange: #e77935;--ep-lime: #28734f;--ep-paper: #f6f5ef;color: #093e2d;background: #fff}.ep-hero{padding:110px 0 120px;background: var(--ep-deep);color: #fff}.ep-hero-inner{display:grid;grid-template-columns:1fr 240px;gap:80px;align-items:end}.ep-kicker,.ep-head>p{color: var(--ep-lime);font-size:12px;font-weight:900;letter-spacing:.12em}.ep-hero h1{margin:20px 0;color: #fff;font-size:clamp(48px,7vw,84px);line-height:1.05}.ep-hero h1 span{color: var(--ep-lime)}.ep-hero p{max-width:650px;color: rgba(255,255,255,.76);font-size:18px;line-height:1.85}.ep-side{border-left: 1px solid rgba(255,255,255,.3);padding-left:28px}.ep-side strong{display:block;color: var(--ep-orange);font-size:80px;line-height:1}.ep-side span,.ep-side small{display:block}.ep-side small{margin-top:10px;color: rgba(255,255,255,.58)}.ep-path,.ep-process,.ep-note{padding:100px 0}.ep-path{background: #fff}.ep-head{max-width:700px;margin-bottom:42px}.ep-head>p{color: var(--ep-orange);margin:0 0 12px}.ep-head h2{margin:0;color: var(--ep-deep);font-size:clamp(34px,4.5vw,56px)}.ep-head>span{display:block;margin-top:12px;color: #28734f}.ep-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top: 1px solid #d6ded6}.ep-cards article{min-height:270px;padding:28px 30px;border-right: 1px solid #d6ded6}.ep-cards article:last-child{border-right: 0}.ep-cards b{color: var(--ep-lime);font-size:30px}.ep-cards h3{margin:46px 0 12px;color: var(--ep-deep);font-size:26px}.ep-cards p{color: #28734f;line-height:1.8}.ep-cards small{display:block;margin-top:18px;color: var(--ep-orange);font-weight:800}.ep-process{background: var(--ep-paper)}.ep-process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.ep-process ol{margin:0;padding:0;border-top: 1px solid #d6ded6;list-style:none}.ep-process li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:24px 0;border-bottom: 1px solid #d6ded6}.ep-process li span{color: var(--ep-lime);font-size:25px;font-weight:950}.ep-process strong{color: var(--ep-deep);font-size:20px}.ep-process li p{margin:7px 0 0;color: #28734f}.ep-note{background: var(--ep-green);text-align:center}.ep-note p{margin:0 0 12px;color: rgba(255,255,255,.72);font-weight:800}.ep-note h2{max-width:760px;margin:0 auto 28px;color: #fff;font-size:clamp(28px,4vw,48px)}.ep-button{padding:14px 28px;border: 0;border-radius: 4px;background: var(--ep-orange);color: #fff;font-weight:900;cursor:pointer}@media(max-width:800px){.ep-hero-inner,.ep-cards,.ep-process-grid{grid-template-columns:1fr}.ep-hero{padding:72px 0 80px}.ep-side{margin-top:24px}.ep-cards article{border-right: 0;border-bottom: 1px solid #d6ded6}.ep-path,.ep-process,.ep-note{padding:70px 0}}
.nr-redesign{--ng: #155d43;--nd: #093e2d;--no: #e77935;--nl: #28734f;--np: #f6f5ef;color: #093e2d}.nr-hero{position:relative;min-height:680px;overflow:hidden;background: var(--nd);color: #fff}.nr-hero>img,.nr-shade{position:absolute;inset:0;width:100%;height:100%}.nr-hero>img{object-fit:cover}.nr-shade{background: linear-gradient(90deg,rgba(9, 62, 45, .95),rgba(9, 62, 45, .7) 48%,rgba(9, 62, 45, .1))}.nr-hero-inner{position:relative;z-index:1;display:flex;min-height:680px;flex-direction:column;justify-content:center}.nr-hero p,.nr-intro>div>p,.nr-practice p{color: var(--nl);font-size:12px;font-weight:900;letter-spacing:.12em}.nr-hero h1{margin:20px 0;font-size:clamp(48px,7vw,84px);line-height:1.04}.nr-hero h1 span{color: var(--nl)}.nr-lead{max-width:620px;color: rgba(255,255,255,.8);font-size:18px;line-height:1.85}.nr-actions{display:flex;gap:12px;margin-top:30px}.nr-actions button,.nr-actions a,.nr-cta button{padding:14px 24px;border: 1px solid transparent;border-radius: 4px;font-weight:900}.nr-actions button,.nr-cta button{background: var(--no);color: #fff}.nr-actions a{border-color: rgba(255,255,255,.45);color: #fff}.nr-intro,.nr-practice,.nr-cta{padding:100px 0}.nr-intro{background: #fff}.nr-intro h2,.nr-practice h2,.nr-cta h2{max-width:760px;margin:14px 0 42px;color: var(--nd);font-size:clamp(34px,4.5vw,56px)}.nr-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top: 1px solid #d6ded6}.nr-grid article{min-height:220px;padding:26px;border-right: 1px solid #d6ded6}.nr-grid article:last-child{border: 0}.nr-grid b{color: var(--nl);font-size:28px}.nr-grid h3{margin:42px 0 10px;color: var(--nd);font-size:24px}.nr-grid span{color: #28734f;line-height:1.8}.nr-practice{background: var(--np)}.nr-practice-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.nr-practice ol{margin:0;padding:0;border-top: 1px solid #d6ded6;list-style:none}.nr-practice li{display:grid;grid-template-columns:60px 1fr;gap:15px;padding:22px 0;border-bottom: 1px solid #d6ded6}.nr-practice li span{color: var(--nl);font-size:24px;font-weight:900}.nr-practice strong,.nr-practice em{display:block}.nr-practice strong{color: var(--nd);font-size:20px}.nr-practice em{margin-top:5px;color: #28734f;font-style:normal}.nr-cta{background: var(--ng);text-align:center}.nr-cta p{color: rgba(255,255,255,.72)}.nr-cta h2{margin:12px auto 28px;color: #fff}@media(max-width:800px){.nr-hero,.nr-hero-inner{min-height:620px}.nr-hero h1{font-size:44px}.nr-grid,.nr-practice-grid{grid-template-columns:1fr}.nr-grid article{border-right: 0;border-bottom: 1px solid #d6ded6}.nr-practice-grid{gap:30px}.nr-intro,.nr-practice,.nr-cta{padding:70px 0}}
.lc-redesign{--lg: #155d43;--ld: #093e2d;--lo: #e77935;--ll: #28734f;--lp: #f6f5ef;color: #093e2d}.lc-hero{position:relative;min-height:660px;overflow:hidden;background: var(--ld);color: #fff}.lc-hero img,.lc-shade{position:absolute;inset:0;width:100%;height:100%}.lc-hero img{object-fit:cover}.lc-shade{background: linear-gradient(90deg,rgba(9, 62, 45, .96),rgba(9, 62, 45, .7) 48%,rgba(9, 62, 45, .12))}.lc-hero-inner{position:relative;z-index:1;display:flex;min-height:660px;flex-direction:column;justify-content:center}.lc-hero p,.lc-content>div>p,.lc-process p{color: var(--ll);font-size:12px;font-weight:900;letter-spacing:.12em}.lc-hero h1{margin:20px 0;font-size:clamp(48px,7vw,82px);line-height:1.04}.lc-hero h1 span{color: var(--ll)}.lc-hero-inner>div{max-width:620px;color: rgba(255,255,255,.8);font-size:18px;line-height:1.85}.lc-hero button,.lc-cta button{width:max-content;margin-top:30px;padding:14px 24px;border: 0;border-radius: 4px;background: var(--lo);color: #fff;font-weight:900}.lc-content,.lc-process,.lc-cta{padding:100px 0}.lc-content{background: #fff}.lc-content h2,.lc-process h2,.lc-cta h2{margin:14px 0 42px;color: var(--ld);font-size:clamp(34px,4.5vw,56px)}.lc-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top: 1px solid #d6ded6}.lc-grid article{min-height:220px;padding:26px;border-right: 1px solid #d6ded6}.lc-grid article:last-child{border: 0}.lc-grid b{color: var(--ll);font-size:28px}.lc-grid h3{margin:42px 0 10px;color: var(--ld);font-size:24px}.lc-grid span{color: #28734f;line-height:1.8}.lc-process{background: var(--lp)}.lc-process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.lc-process ol{margin:0;padding:0;border-top: 1px solid #d6ded6;list-style:none}.lc-process li{display:grid;grid-template-columns:60px 1fr;gap:15px;padding:22px 0;border-bottom: 1px solid #d6ded6}.lc-process li span{color: var(--ll);font-size:24px;font-weight:900}.lc-process strong,.lc-process em{display:block}.lc-process strong{color: var(--ld);font-size:20px}.lc-process em{margin-top:5px;color: #28734f;font-style:normal}.lc-cta{background: var(--lg);text-align:center}.lc-cta p{color: rgba(255,255,255,.72)}.lc-cta h2{margin:12px auto;color: #fff}@media(max-width:800px){.lc-hero,.lc-hero-inner{min-height:600px}.lc-hero h1{font-size:44px}.lc-grid,.lc-process-grid{grid-template-columns:1fr}.lc-grid article{border-right: 0;border-bottom: 1px solid #d6ded6}.lc-process-grid{gap:30px}.lc-content,.lc-process,.lc-cta{padding:70px 0}}
.mt-redesign{--mg: #155d43;--md: #093e2d;--mo: #e77935;--ml: #28734f;--mp: #f6f5ef;color: #093e2d}.mt-hero{position:relative;min-height:680px;overflow:hidden;background: var(--md);color: #fff}.mt-hero>img,.mt-hero-shade{position:absolute;inset:0;width:100%;height:100%}.mt-hero>img{object-fit:cover}.mt-hero-shade{background: linear-gradient(90deg,rgba(9, 62, 45, .94),rgba(9, 62, 45, .58) 52%,rgba(9, 62, 45, .08))}.mt-hero-inner{position:relative;z-index:1;display:flex;min-height:680px;flex-direction:column;justify-content:center}.mt-kicker,.mt-label{color: var(--ml);font-size:12px;font-weight:900;letter-spacing:.12em}.mt-hero h1{margin:20px 0;font-size:clamp(48px,7vw,84px);line-height:1.04}.mt-hero h1 span{color: var(--ml)}.mt-lead{max-width:640px;color: rgba(255,255,255,.82);font-size:18px;line-height:1.85}.mt-actions{display:flex;gap:12px;margin-top:30px}.mt-actions button,.mt-actions a,.mt-cta button{padding:14px 24px;border: 1px solid transparent;border-radius: 4px;font-weight:900}.mt-actions button,.mt-cta button{background: var(--mo);color: #fff}.mt-actions a{border-color: rgba(255,255,255,.45);color: #fff}.mt-intro,.mt-practice,.mt-gallery,.mt-wall,.mt-cta{padding:100px 0}.mt-intro{background: #fff}.mt-intro h2,.mt-practice h2,.mt-gallery h2,.mt-wall h2,.mt-cta h2{margin:14px 0 42px;color: var(--md);font-size:clamp(34px,4.5vw,56px)}.mt-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top: 1px solid #d6ded6}.mt-grid article{min-height:220px;padding:26px;border-right: 1px solid #d6ded6}.mt-grid article:last-child{border: 0}.mt-grid b{color: var(--ml);font-size:28px}.mt-grid h3{margin:42px 0 10px;color: var(--md);font-size:24px}.mt-grid span,.mt-muted{color: #28734f;line-height:1.8}.mt-practice{background: var(--mp)}.mt-practice-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.mt-practice ol{margin:0;padding:0;border-top: 1px solid #d6ded6;list-style:none}.mt-practice li{display:grid;grid-template-columns:60px 1fr;gap:15px;padding:22px 0;border-bottom: 1px solid #d6ded6}.mt-practice li span{color: var(--ml);font-size:24px;font-weight:900}.mt-practice strong,.mt-practice em{display:block}.mt-practice strong{color: var(--md);font-size:20px}.mt-practice em{margin-top:5px;color: #28734f;font-style:normal}.mt-gallery{background: #fff}.mt-gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:42px}.mt-gallery-grid figure{margin:0;aspect-ratio:1;overflow:hidden}.mt-gallery-grid img{width:100%;height:100%;object-fit:cover;display:block}.mt-service{grid-template-columns:repeat(5,1fr)}.mt-wall{background: var(--mp)}.mt-wall-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.mt-wall img{width:100%;max-height:480px;object-fit:cover}.mt-wall h2{margin-bottom:20px}.mt-wall p:not(.mt-label){color: #28734f;line-height:1.8}.mt-cta{background: var(--mg);text-align:center}.mt-cta p{color: rgba(255,255,255,.72)}.mt-cta h2{margin:12px auto 28px;color: #fff}.mt-cta button{border: 0;cursor:pointer}@media(max-width:800px){.mt-hero,.mt-hero-inner{min-height:600px}.mt-hero h1{font-size:44px}.mt-grid,.mt-practice-grid,.mt-wall-inner{grid-template-columns:1fr}.mt-grid article{border-right: 0;border-bottom: 1px solid #d6ded6}.mt-practice-grid{gap:30px}.mt-gallery-grid,.mt-service{grid-template-columns:repeat(2,1fr)}.mt-intro,.mt-practice,.mt-gallery,.mt-wall,.mt-cta{padding:70px 0}}

/* ===== styles/site-system.css ===== */


/* Service area: replace the former dashboard treatment with a calm, factual brand page. */
.legacy-service-area { display: none !important; }
.service-area-modern { background: var(--jx-paper, #f6f5ef); color: var(--jx-deep, #093e2d); }
.service-area-hero { padding: clamp(3.5rem, 8vw, 7rem) 0; background: #093e2d; color: #fff; }
.service-area-hero-grid { display:grid; gap:3rem; align-items:center; grid-template-columns:1fr; }
.service-area-hero h1 { max-width: 700px; margin:.75rem 0 1.25rem; font-size:clamp(2.2rem,5vw,4.5rem); line-height:1.08; letter-spacing:0; }
.service-area-lead { max-width:650px; color:rgba(255,255,255,.78); font-size:1.05rem; line-height:2; }
.eyebrow { margin:0; color:#e77935; font-size:.75rem; font-weight:800; letter-spacing:.18em; }
.service-area-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.service-area-actions .btn { border-radius:4px; }
.service-area-actions .btn.secondary { border-color:rgba(255,255,255,.35); color:#fff; }
.service-area-map { overflow:hidden; border:1px solid rgba(255,255,255,.18); background:#155d43; border-radius:8px; box-shadow:0 24px 60px rgba(0,0,0,.2); }
.service-area-map img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; opacity:.9; }
.map-caption { display:block; padding:.8rem 1rem; color:rgba(255,255,255,.68); font-size:.75rem; }
.service-area-section { padding:clamp(3.5rem,7vw,6rem) 0; }
.service-area-section h2 { margin:.6rem 0 2rem; font-size:clamp(1.8rem,3vw,2.7rem); letter-spacing:0; }
.service-area-tint { background:#eef2e8; }
.area-grid,.service-type-grid,.booking-steps { display:grid; gap:1rem; grid-template-columns:repeat(1,minmax(0,1fr)); }
.area-grid article,.service-type-grid article { padding:1.5rem; background:#fff; border:1px solid #dbe4d9; border-radius:6px; }
.area-grid article { border-top:4px solid #b8ca4b; }
.area-grid article:nth-child(2n) { border-top-color:#e77935; }
.area-grid span,.booking-steps strong { color:#b8ca4b; font-size:1.6rem; font-weight:900; }
.area-grid h3,.service-type-grid h3,.booking-steps h3 { margin:.75rem 0 .35rem; font-size:1.15rem; }
.area-grid p,.service-type-grid p,.booking-steps p { margin:0; color:#66756d; line-height:1.8; font-size:.95rem; }
.service-type-grid article { background:#f6f5ef; }
.service-type-grid svg { width:1.8rem; height:1.8rem; color:#e77935; }
.booking-heading { display:flex; gap:1rem; align-items:end; justify-content:space-between; flex-wrap:wrap; }
.booking-heading .btn { display:inline-flex; gap:.5rem; align-items:center; border-radius:4px; }
.booking-steps article { padding:1.5rem 0; border-top:1px solid #dbe4d9; }
.booking-steps strong { font-size:2.2rem; }
@media (min-width:700px) { .area-grid,.service-type-grid,.booking-steps { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:980px) { .service-area-hero-grid { grid-template-columns:1.05fr .95fr; } .area-grid,.service-type-grid,.booking-steps { grid-template-columns:repeat(4,minmax(0,1fr)); } }

/* Service detail pages share the same restrained brand accents. */
.jx-site main.bg-white.text-gray-900 { background:#f6f5ef !important; color:#093e2d !important; }
.jx-site main.bg-white.text-gray-900 .bg-gray-50 { background:#eef2e8 !important; }
.jx-site main.bg-white.text-gray-900 .text-red-600,.jx-site main.bg-white.text-gray-900 .text-blue-600 { color:#155d43 !important; }
.jx-site main.bg-white.text-gray-900 .bg-red-600,.jx-site main.bg-white.text-gray-900 .bg-blue-600 { background:#e77935 !important; }
.jx-site main.bg-white.text-gray-900 .border-red-200,.jx-site main.bg-white.text-gray-900 .border-blue-200 { border-color:#dbe4d9 !important; }
.jx-site main.bg-white.text-gray-900 article,.jx-site main.bg-white.text-gray-900 .rounded-2xl { border-radius:8px !important; }
.jx-site main.overflow-hidden.bg-\[\#f7faf9\] { background:#f6f5ef !important; }
.jx-site main.overflow-hidden.bg-\[\#f7fbff\] { background:#f6f5ef !important; }
.jx-site main.overflow-hidden .text-blue-600,.jx-site main.overflow-hidden .text-blue-200 { color:#e77935 !important; }
.jx-site main.overflow-hidden .bg-blue-600 { background:#e77935 !important; }
body.jx-site { min-width: 320px; color: var(--jx-ink); background: var(--jx-paper); font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", Arial, sans-serif; }
body.jx-site .site-header { background: #fff; box-shadow: 0 4px 18px rgba(9,62,45,.08); }
body.jx-site .topbar, body.jx-site .site-footer { background: var(--jx-deep); }
body.jx-site .topbar { color: rgba(255,255,255,.72); }
body.jx-site .topbar-inner a { color: var(--jx-lime); }
body.jx-site .site-nav > .nav-item > a:hover, body.jx-site .site-nav > .nav-item:focus-within > a, body.jx-site .site-nav > .nav-item.active > a { color: var(--jx-green); }
body.jx-site .btn.primary { background: var(--jx-orange); border-color: var(--jx-orange); box-shadow: 0 12px 28px rgba(231,121,53,.2); }
body.jx-site .btn.primary:hover { background: #c85f25; border-color: #c85f25; }
body.jx-site .btn.outline { border-color: rgba(21,93,67,.38); color: var(--jx-green); background: #fff; }
body.jx-site .contact-widget button, body.jx-site .contact-widget a { background: var(--jx-green); }
body.jx-site .contact-widget button:hover, body.jx-site .contact-widget a:hover { background: var(--jx-orange); }
body.jx-site :is(h1,h2,h3,h4) { letter-spacing: -.02em; }
body.jx-site img { max-width: 100%; }
body.jx-site .site-footer { border-top: 4px solid var(--jx-lime); }

body[data-page="course_live_training"] { --live-bg: #f6f5ef; --live-panel: #fff; --live-ink: #173328; --live-muted: #63716a; --live-line: #dce4dc; --live-green: #155d43; --live-cyan: #155d43; --live-coral: #e77935; --live-yellow: #b8ca4b; }
@media (max-width: 980px) { body.jx-site .container { width: min(var(--max,1440px), calc(100% - 36px)); } body.jx-site .site-nav { background: #fff; border-top: 1px solid var(--jx-line); } body.jx-site .site-nav .mega-menu { box-shadow: none; } }
body.jx-site { margin: 0; line-height: 1.75; }
body.jx-site .container, body.jx-site .live-shell { width: min(1280px, calc(100% - 80px)); margin-inline: auto; }
body.jx-site main h1 { font-size: clamp(36px,4.2vw,60px); line-height: 1.23; font-weight: 800; text-wrap: balance; }
body.jx-site main h2 { font-size: clamp(26px,2.8vw,40px); line-height: 1.35; text-wrap: balance; }
body.jx-site main p { overflow-wrap: break-word; }
body.jx-site :is(.btn,.ec-btn,.live-btn,.ep-button,.org-button,.mt-actions button,.mt-actions a,.nr-actions button,.nr-actions a,.lc-hero button,.mt-cta button,.nr-cta button,.lc-cta button) { min-height: 48px; border-radius: 6px; font-weight: 700; box-shadow: none; cursor: pointer; padding: 12px 24px; }
body.jx-site :is(.btn.primary,.ec-btn-primary,.ep-button,.org-button,.mt-actions button,.nr-actions button,.lc-hero button,.mt-cta button,.nr-cta button,.lc-cta button) { background: var(--jx-green); border-color: var(--jx-green); color: #fff; }
body.jx-site :is(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--jx-orange); outline-offset: 4px; }
body.jx-site .site-nav a { font-weight: 600; }
body.jx-site .brand-copy strong { color: var(--jx-deep); }
body.jx-site .nav-inner { min-height: 86px; }
body.jx-site .topbar-inner { min-height: 36px; }
body.jx-site .topbar-inner a { font-size: 15px; }
body.jx-site .mega-menu { border-top: 3px solid var(--jx-green); box-shadow: 0 12px 28px rgba(9,62,45,.08); }
body.jx-site .mega-menu-links a { border-radius: 4px; }
body.jx-site .mega-menu-links a:hover, body.jx-site .mega-menu-links .is-current { color: var(--jx-green); background: #edf2e8; }
body.jx-site .site-footer { color: #d5e2d9; }
body.jx-site .site-footer :is(h3,strong) { color: #fff; }
body.jx-site main :is(article[class*="rounded"],figure[class*="rounded"],[class*="-card"],[class*="-panel"]) { border-radius: 8px; box-shadow: none; }
body.jx-site main :is(.home-feature-grid,.home-course-grid,.home-service-grid) { gap: 24px; }
body.jx-site main :is(.home-course-card,.home-hero-card,.growth-card,.skill-card,.support-card,.news-detail-card) { border: 1px solid var(--jx-line); box-shadow: none; }
body.jx-site .home-section { padding-block: 88px; }
body.jx-site .home-section-title { text-align: left; }
body.jx-site .home-section-title p { color: var(--jx-green); }
body.jx-site .home-hero-actions .btn.primary { background: var(--jx-orange); border-color: var(--jx-orange); color: var(--jx-deep); }
body.jx-site .home-service-grid a { border-radius: 6px; }
body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero) { min-height: 590px; background: var(--jx-paper); color: var(--jx-ink); position: relative; padding: 0; }
body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero)>img { inset: 0 0 0 auto; width: 45%; height: 100%; position: absolute; object-fit: cover; filter: none; opacity: 1; }
body.jx-site :is(.mt-hero-shade,.nr-shade,.lc-shade,.ec-hero-shade,.hk-shade) { display: none; }
body.jx-site :is(.mt-hero-inner,.nr-hero-inner,.lc-hero-inner,.ec-hero-content,.hk-hero-content) { min-height: 590px; padding-block: 68px; display: flex; align-items: flex-start; flex-direction: column; justify-content: center; position: relative; }
body.jx-site :is(.mt-hero-inner,.nr-hero-inner,.lc-hero-inner,.ec-hero-content,.hk-hero-content)>* { max-width: 49%; }
body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero) h1 { color: var(--jx-deep); font-size: clamp(36px,3.6vw,54px); line-height: 1.3; margin: 20px 0; }
body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero) h1 span { color: var(--jx-green); }
body.jx-site :is(.mt-lead,.nr-lead,.ec-lead,.hk-lead,.lc-hero-inner>div) { color: var(--jx-muted); font-size: 17px; line-height: 1.9; }
body.jx-site :is(.mt-kicker,.mt-label,.ec-label,.ec-index,.hk-index,.nr-hero p,.lc-hero p,.nr-intro>div>p,.lc-content>div>p) { color: var(--jx-green); font-size: 12px; letter-spacing: .1em; }
body.jx-site :is(.mt-actions,.nr-actions,.ec-actions) { gap: 12px; flex-wrap: wrap; }
body.jx-site :is(.mt-actions a,.nr-actions a,.ec-btn-ghost) { border-color: #b3c8bb; color: var(--jx-green); background: transparent; }
body.jx-site .ec-facts { border-color: var(--jx-line); color: var(--jx-ink); }
body.jx-site .ec-facts dt { color: var(--jx-muted); }
body.jx-site .ec-facts dd { color: var(--jx-green); }
body.jx-site :is(.mt-intro,.mt-practice,.mt-gallery,.mt-wall,.nr-intro,.nr-practice,.lc-content,.lc-process,.ep-path,.ep-process,.org-map,.org-functions,.org-chart) { padding-block: 80px; }
body.jx-site :is(.mt-grid,.nr-grid,.lc-grid) { border-top: 1px solid var(--jx-line); }
body.jx-site :is(.mt-grid,.nr-grid,.lc-grid) b { color: var(--jx-green); font-size: 18px; font-weight: 600; }
body.jx-site .mt-gallery-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
body.jx-site .mt-gallery-grid figure { aspect-ratio: 4/3; background: var(--jx-paper); border: 1px solid var(--jx-line); border-radius: 6px; }
body.jx-site .mt-gallery-grid img { object-fit: contain; }
body.jx-site .mt-wall img { max-height: none; height: auto; object-fit: contain; }
body.jx-site .lead-modal-card { max-height: 90dvh; overflow: auto; border-radius: 8px; }
body.jx-site .live-hero { background: var(--jx-paper); }
body.jx-site :is(.live-metrics div,.live-card,.live-path-card,.live-faq-item,.live-video-card,.live-work-card,.live-stage) { background: #fff; border-color: var(--jx-line); box-shadow: none; }
body.jx-site .live-hero::before, body.jx-site .live-hero::after, body.jx-site .glass-line::after, body.jx-site .scan-line, body.jx-site .radar-ring { display: none; }
body.jx-site .digital-grid { background-image: none; }
body.jx-site .command-screen { background: var(--jx-deep); }
/* 页面级品牌修正 */
body[data-page="faq_news"] [class*="from-red"], body[data-page="faq_news"] [class*="bg-red"] { background-color: var(--jx-paper) !important; background-image: none !important; }
body[data-page="faq_news"] [class*="text-red"], body[data-page="faq_news"] [class*="border-red"] { color: var(--jx-green) !important; border-color: var(--jx-line) !important; }
body[data-page="faq_news"] [class*="shadow-red"] { --tw-shadow-color: rgba(21,93,67,.12) !important; }
body[data-page="partner_institutions"] [class*="bg-red-600"] { background-color: var(--jx-green) !important; }
body[data-page="partner_institutions"] [class*="text-red-600"] { color: var(--jx-green) !important; }
body[data-page="partner_institutions"] [class*="border-red"] { border-color: var(--jx-line) !important; }
body[data-page="partner_institutions"] [class*="bg-red-50"] { background-color: #edf2e8 !important; }
body[data-page="service_area"] { background: var(--jx-paper) !important; color: var(--jx-ink) !important; }
body[data-page="service_area"] main > section { background: var(--jx-paper) !important; }
body[data-page="service_area"] .command-screen { background: var(--jx-deep) !important; border-color: rgba(184,202,75,.35) !important; }
body[data-page="service_area"] [class*="border-cyan"], body[data-page="service_area"] [class*="border-red"] { border-color: rgba(184,202,75,.28) !important; }
body[data-page="service_area"] [class*="text-cyan"], body[data-page="service_area"] [class*="text-red"] { color: #d9e7c7 !important; }
body[data-page="service_area"] [class*="bg-cyan"] { background-color: rgba(184,202,75,.12) !important; }
body[data-page="course_online_entrepreneurship"] [class*="bg-indigo-950"], body[data-page="course_online_entrepreneurship"] [class*="bg-indigo-900"] { background-color: var(--jx-deep) !important; }
body[data-page="course_online_entrepreneurship"] [class*="text-indigo"], body[data-page="course_online_entrepreneurship"] [class*="text-purple"], body[data-page="course_online_entrepreneurship"] [class*="text-blue"], body[data-page="course_online_entrepreneurship"] [class*="text-cyan"] { color: var(--jx-green) !important; }
body[data-page="course_online_entrepreneurship"] [class*="bg-blue-600"], body[data-page="course_online_entrepreneurship"] [class*="from-blue"] { background-color: var(--jx-orange) !important; background-image: none !important; }
body[data-page="course_appliance"] [class*="text-blue"], body[data-page="course_appliance"] [class*="border-blue"] { color: var(--jx-green) !important; border-color: var(--jx-green) !important; }
body[data-page="course_appliance"] [class*="bg-blue-600"] { background-color: var(--jx-green) !important; }
body[data-page="course_appliance"] [class*="bg-blue-50"] { background-color: #edf2e8 !important; }
body[data-page="course_online_entrepreneurship"] main { background: var(--jx-paper) !important; }
body[data-page="course_online_entrepreneurship"] [class*="text-transparent"] { color: #fff !important; -webkit-text-fill-color: #fff !important; background-image: none !important; }
body[data-page="course_online_entrepreneurship"] [class*="border-indigo"], body[data-page="course_online_entrepreneurship"] [class*="border-purple"], body[data-page="course_online_entrepreneurship"] [class*="border-cyan"], body[data-page="course_online_entrepreneurship"] [class*="border-blue"] { border-color: rgba(184,202,75,.28) !important; }
body[data-page="course_online_entrepreneurship"] [class*="bg-purple"], body[data-page="course_online_entrepreneurship"] [class*="bg-cyan"] { background-color: rgba(184,202,75,.14) !important; }
body[data-page="course_online_entrepreneurship"] [class*="shadow-blue"], body[data-page="course_online_entrepreneurship"] [class*="shadow-indigo"] { --tw-shadow-color: rgba(21,93,67,.22) !important; }
body[data-page="course_appliance"] main { background: var(--jx-paper) !important; }
body[data-page="course_appliance"] [class*="bg-slate-900"], body[data-page="course_appliance"] [class*="bg-slate-800"] { background-color: var(--jx-deep) !important; }
body[data-page="course_appliance"] [class*="shadow-blue"] { --tw-shadow-color: rgba(21,93,67,.18) !important; }
body[data-page="service_area"] .command-screen::before { background-image: linear-gradient(rgba(184,202,75,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(184,202,75,.08) 1px, transparent 1px); }
body[data-page="service_area"] .dashboard-card, body[data-page="service_area"] #coverage { border-radius: 8px !important; }
body[data-page="service_area"] [class*="text-slate-400"], body[data-page="service_area"] [class*="text-slate-500"] { color: rgba(255,255,255,.66) !important; }
body[data-page="service_area"] [class*="text-white"] { color: #fff !important; }
body[data-page="service_area"] [class*="bg-red"], body[data-page="service_area"] [class*="text-red"] { color: #f3c46b !important; background-color: rgba(231,121,53,.16) !important; }
@media(max-width:980px){body.jx-site .container,body.jx-site .live-shell{width:calc(100% - 40px)}body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero){display:flex;flex-direction:column;min-height:0}body.jx-site :is(.mt-hero,.nr-hero,.lc-hero,.ec-hero,.hk-hero)>img{position:relative;order:2;width:100%;height:360px}body.jx-site :is(.mt-hero-inner,.nr-hero-inner,.lc-hero-inner,.ec-hero-content,.hk-hero-content){min-height:0;padding-block:48px}body.jx-site :is(.mt-hero-inner,.nr-hero-inner,.lc-hero-inner,.ec-hero-content,.hk-hero-content)>*{max-width:100%}body.jx-site .mt-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:600px){body.jx-site main h1{font-size:34px}body.jx-site main h2{font-size:28px}body.jx-site .topbar-inner{display:flex;justify-content:center;min-height:30px}body.jx-site .topbar-inner>span{display:none}body.jx-site .mt-gallery-grid{grid-template-columns:1fr}body.jx-site .contact-widget{right:10px;bottom:14px;top:auto;transform:none;width:auto;display:flex;gap:2px}body.jx-site .contact-widget :is(button,a){min-height:44px;width:48px;padding:10px}body.jx-site .contact-widget span{display:none}body.jx-site .site-footer{padding-bottom:76px}}

/* ===== styles/completion-learning.css ===== */
/* Scoped completion layer: original photos, quiet typography and shared logo colors. */
body.jx-site .jxlearn-page { background:#f6f5ef; color:#233b30; padding-bottom:48px; }
.jxlearn-page *, .jxlearn-viewer * { box-sizing:border-box; }
.jxlearn-page .jxlearn-wrap { width:min(1160px,calc(100% - 64px)); margin-inline:auto; }
.jxlearn-page a { text-decoration:none; }
.jxlearn-page .jxlearn-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding-top:28px; font-size:13px; color:#67756c; }
.jxlearn-page .jxlearn-breadcrumb a:hover { color:#155d43; text-decoration:underline; }
body.jx-site .jxlearn-page .jxlearn-hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); align-items:center; gap:64px; padding:58px 0 64px; min-height:0; background:none; }
.jxlearn-page .jxlearn-eyebrow { display:flex; align-items:center; gap:10px; color:#155d43; font-size:12px; letter-spacing:.12em; font-weight:700; margin:0 0 18px; }
.jxlearn-page .jxlearn-eyebrow::before { content:""; width:24px; height:3px; background:#e77935; flex-shrink:0; }
body.jx-site .jxlearn-page h1 { font-size:clamp(32px,3.5vw,48px); line-height:1.32; letter-spacing:-.025em; color:#093e2d; font-weight:750; margin:0 0 22px; }
.jxlearn-page h1 span { display:block; font-size:clamp(23px,2.3vw,31px); margin-top:14px; color:#3a5145; font-weight:500; line-height:1.5; letter-spacing:0; }
body.jx-site .jxlearn-page h2 { font-size:clamp(25px,2.4vw,33px); color:#093e2d; line-height:1.45; margin:0; font-weight:700; }
body.jx-site .jxlearn-page h3 { font-size:19px; color:#223d2e; line-height:1.5; margin:0 0 8px; font-weight:700; }
.jxlearn-page p { margin:0 0 16px; }
.jxlearn-page .jxlearn-lead { font-size:17px; color:#58685f; line-height:1.95; max-width:620px; margin-bottom:0; }
.jxlearn-page .jxlearn-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin-top:28px; }
.jxlearn-page .jxlearn-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; border:1px solid #155d43; background:#155d43; color:#fff; border-radius:4px; padding:12px 22px; font:inherit; font-size:15px; font-weight:700; cursor:pointer; }
.jxlearn-page .jxlearn-button:hover { background:#093e2d; border-color:#093e2d; }
.jxlearn-page .jxlearn-button-outline { color:#155d43; background:transparent; }
.jxlearn-page .jxlearn-button-outline:hover { color:#fff; }
.jxlearn-page .jxlearn-text-link { font-size:14px; color:#155d43; text-decoration:underline; text-underline-offset:5px; }
.jxlearn-page .jxlearn-syllabus { align-self:stretch; display:flex; flex-direction:column; justify-content:center; border-top:3px solid #e77935; background:#eeeee5; padding:30px; }
.jxlearn-page .jxlearn-syllabus ol { list-style:none; padding:0; margin:0 0 20px; }
.jxlearn-page .jxlearn-syllabus li { display:flex; gap:20px; padding:10px 0; border-bottom:1px solid #d8ddd0; font-size:16px; }
.jxlearn-page .jxlearn-syllabus li span { color:#788373; font-size:13px; }
.jxlearn-page .jxlearn-note { color:#6b776d; font-size:13px; line-height:1.85; margin:0; }
.jxlearn-page .jxlearn-photo { margin:0; min-width:0; }
.jxlearn-page .jxlearn-photo button { display:block; border:0; padding:0; background:#e5e6dc; width:100%; cursor:zoom-in; }
.jxlearn-page .jxlearn-photo img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; filter:none; }
.jxlearn-page .jxlearn-photo figcaption { display:flex; gap:10px; justify-content:space-between; padding:12px 0; font-size:13px; color:#5d6d61; line-height:1.65; }
.jxlearn-page .jxlearn-photo figcaption span { color:#7a8276; font-size:12px; flex-shrink:0; }
.jxlearn-page .jxlearn-portrait img { aspect-ratio:4/5; object-fit:contain; background:#fff; }
.jxlearn-page .jxlearn-summary { display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:28px 0; border-block:1px solid #d7dcd0; }
.jxlearn-page .jxlearn-summary>div { display:grid; grid-template-columns:100px 1fr; gap:18px; }
.jxlearn-page .jxlearn-summary span { color:#155d43; font-size:13px; font-weight:700; padding-top:2px; }
.jxlearn-page .jxlearn-summary p { color:#5a695e; font-size:14px; line-height:1.85; margin:0; }
.jxlearn-page .jxlearn-section { padding:62px 0; scroll-margin-top:115px; }
.jxlearn-page .jxlearn-heading { max-width:780px; margin-bottom:34px; }
.jxlearn-page .jxlearn-heading>p:last-child:not(.jxlearn-eyebrow) { color:#627063; font-size:15px; margin:16px 0 0; line-height:1.9; }
.jxlearn-page .jxlearn-curriculum { display:grid; grid-template-columns:1fr 1fr; column-gap:50px; }
.jxlearn-page .jxlearn-curriculum article { display:flex; gap:22px; border-top:1px solid #d8ddd0; padding:26px 0; min-width:0; }
.jxlearn-page .jxlearn-number { font-size:14px; color:#9f5427; padding-top:4px; }
.jxlearn-page .jxlearn-curriculum p, .jxlearn-page .jxlearn-next p, .jxlearn-page .jxlearn-process p, .jxlearn-page .jxlearn-check-list p { font-size:15px; line-height:1.9; color:#5f6d61; margin:0; }
.jxlearn-page .jxlearn-next { display:grid; grid-template-columns:1fr 1fr; gap:60px; border-top:1px solid #d8ddd0; }
.jxlearn-page .jxlearn-next .jxlearn-note { margin-top:20px; font-size:13px; }
body.jx-site .jxlearn-page .jxlearn-cta { display:flex; gap:30px; align-items:center; justify-content:space-between; border-block:1px solid #bac9b6; background:#edf0e6; padding:36px; color:#243b2e; }
.jxlearn-page .jxlearn-cta p { color:#5d6d60; font-size:14px; line-height:1.9; margin:12px 0 0; max-width:650px; }
.jxlearn-page .jxlearn-cta .jxlearn-eyebrow { margin:0 0 12px; }
.jxlearn-page .jxlearn-cta .jxlearn-actions { margin:0; flex-shrink:0; }
.jxlearn-page .jxlearn-links { display:flex; flex-wrap:wrap; gap:26px; padding:28px 0 0; }
.jxlearn-page .jxlearn-links a { display:flex; gap:22px; color:#526854; font-size:14px; padding:8px 0; }
.jxlearn-page .jxlearn-links a:hover { color:#093e2d; text-decoration:underline; text-underline-offset:5px; }
.jxlearn-page .jxlearn-gallery { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.jxlearn-page .jxlearn-gallery .jxlearn-photo { padding-bottom:12px; }
.jxlearn-page .jxlearn-gallery .jxlearn-photo:first-child:last-child { grid-column:1/-1; }
.jxlearn-page .jxlearn-process { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; padding:0; list-style:none; }
.jxlearn-page .jxlearn-process li { border-top:1px solid #ced7c4; padding-top:20px; }
.jxlearn-page .jxlearn-process li>span { font-size:25px; color:#155d43; display:block; margin-bottom:16px; }
.jxlearn-page .jxlearn-letter-heading { padding:58px 0 46px; max-width:820px; }
.jxlearn-page .jxlearn-letter { display:grid; grid-template-columns:280px minmax(0,1fr); gap:64px; border-top:1px solid #d8ddd0; padding:48px 0 68px; }
.jxlearn-page .jxlearn-letter aside { align-self:start; }
.jxlearn-page .jxlearn-letter aside>a { display:inline-block; margin-top:12px; }
.jxlearn-page .jxlearn-letter-body h2 { font-size:28px; margin-bottom:28px; }
.jxlearn-page .jxlearn-letter-body p, .jxlearn-page .jxlearn-letter-body li { font-size:16px; line-height:2.1; color:#526555; margin-bottom:20px; }
.jxlearn-page .jxlearn-letter-body h3 { margin:32px 0 18px; }
.jxlearn-page .jxlearn-letter-body ul { padding-left:22px; }
.jxlearn-page .jxlearn-letter-body .jxlearn-signature { color:#155d43; margin-top:40px; font-weight:700; }
.jxlearn-page .jxlearn-people { display:grid; grid-template-columns:repeat(4,1fr); gap:30px 24px; }
.jxlearn-page .jxlearn-people figcaption span { display:none; }
.jxlearn-page .jxlearn-list { padding-left:20px; line-height:2; color:#5f6d61; margin-top:0; }
.jxlearn-page .jxlearn-query { background:#fff; border-top:3px solid #155d43; padding:32px; margin-bottom:36px; }
body.jx-site .jxlearn-page .jxlearn-query-form { display:grid; grid-template-columns:2fr 1.25fr 1.1fr auto; gap:18px; align-items:end; margin-bottom:20px; }
.jxlearn-page .jxlearn-query-form label { color:#48604d; font-size:13px; }
.jxlearn-page .jxlearn-query-form input { margin-top:9px; width:100%; min-width:0; height:48px; border:1px solid #cbd4c4; border-radius:4px; background:#fff; color:#263d2e; padding:10px 13px; font:inherit; }
.jxlearn-page .query-meta { border-top:1px solid #d7dfd0; margin-top:24px; padding-top:20px; color:#607063; font-size:14px; }
.jxlearn-page .query-results { margin-top:24px; }
.jxlearn-page .jxlearn-official { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:38px; background:#fff; border-top:3px solid #155d43; margin-bottom:48px; }
.jxlearn-page .jxlearn-official h2 { font-size:28px; }
.jxlearn-page .jxlearn-official p { color:#647367; font-size:14px; line-height:1.9; margin-top:18px; }
.jxlearn-page .jxlearn-official .jxlearn-button { margin-top:6px; }
.jxlearn-page .jxlearn-check-list { list-style:none; padding:0; margin:0; }
.jxlearn-page .jxlearn-check-list li { display:flex; gap:22px; padding:18px 0; border-top:1px solid #d7dfd0; }
.jxlearn-page .jxlearn-check-list li>span { color:#9f5427; font-size:13px; padding-top:5px; }
.jxlearn-page .jxlearn-check-list h3 { font-size:17px; }
.jxlearn-viewer { border:0; background:#f6f5ef; padding:24px; width:min(1100px,95vw); max-height:94dvh; overflow:auto; color:#263d2e; }
.jxlearn-viewer::backdrop { background:rgba(12,24,17,.85); }
.jxlearn-viewer .jxlearn-viewer-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:18px; }
.jxlearn-viewer .jxlearn-viewer-bar p { margin:0; font-size:14px; }
.jxlearn-viewer button { min-height:44px; min-width:44px; border:1px solid #98ac92; background:transparent; border-radius:3px; cursor:pointer; color:#263d2e; }
.jxlearn-viewer img { display:block; width:auto; max-width:100%; max-height:75dvh; object-fit:contain; margin:auto; }
.jxlearn-viewer a { display:inline-block; margin-top:18px; color:#155d43; }
@media(max-width:980px) {
 body.jx-site .jxlearn-page .jxlearn-hero { grid-template-columns:1fr 1fr; gap:34px; }
 .jxlearn-page .jxlearn-summary>div { display:block; }
 .jxlearn-page .jxlearn-summary span { display:block; margin-bottom:10px; }
 .jxlearn-page .jxlearn-cta { display:block!important; }
 .jxlearn-page .jxlearn-cta .jxlearn-actions { margin-top:24px; }
 .jxlearn-page .jxlearn-people { grid-template-columns:repeat(3,1fr); }
 body.jx-site .jxlearn-page .jxlearn-query-form { grid-template-columns:1fr 1fr; }
 .jxlearn-page .jxlearn-letter { grid-template-columns:220px 1fr; gap:35px; }
}
@media(max-width:760px) {
 .jxlearn-page .jxlearn-wrap { width:calc(100% - 36px); }
 .jxlearn-page .jxlearn-breadcrumb { padding-top:20px; }
 body.jx-site .jxlearn-page .jxlearn-hero { display:grid; grid-template-columns:1fr; padding:36px 0 40px; gap:32px; }
 body.jx-site .jxlearn-page h1 { font-size:32px; }
 .jxlearn-page h1 span { font-size:23px; }
 .jxlearn-page .jxlearn-lead { font-size:16px; }
 .jxlearn-page .jxlearn-syllabus { padding:24px; }
 .jxlearn-page .jxlearn-summary { grid-template-columns:1fr; gap:22px; }
 .jxlearn-page .jxlearn-section { padding:44px 0; }
 .jxlearn-page .jxlearn-curriculum, .jxlearn-page .jxlearn-next, .jxlearn-page .jxlearn-official { grid-template-columns:1fr; gap:0; }
 .jxlearn-page .jxlearn-next .jxlearn-heading { margin-bottom:24px; }
 .jxlearn-page .jxlearn-gallery, .jxlearn-page .jxlearn-process, .jxlearn-page .jxlearn-people { grid-template-columns:1fr 1fr; gap:22px 18px; }
 .jxlearn-page .jxlearn-gallery .jxlearn-photo { grid-column:1/-1; }
 .jxlearn-page .jxlearn-cta { padding:28px 22px!important; }
 .jxlearn-page .jxlearn-letter-heading { padding:36px 0; }
 .jxlearn-page .jxlearn-letter { grid-template-columns:1fr; gap:36px; padding:34px 0 44px; }
 .jxlearn-page .jxlearn-letter aside { max-width:280px; }
 .jxlearn-page .jxlearn-letter-body p, .jxlearn-page .jxlearn-letter-body li { font-size:15px; line-height:2; }
 .jxlearn-page .jxlearn-query, .jxlearn-page .jxlearn-official { padding:22px; }
 body.jx-site .jxlearn-page .jxlearn-query-form { grid-template-columns:1fr; gap:20px; }
 .jxlearn-page .jxlearn-query-form button { width:100%; }
 .jxlearn-page .jxlearn-official .jxlearn-check-list { margin-top:32px; }
 .jxlearn-viewer { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .jxlearn-page { scroll-behavior:auto; } }

/* ===== styles/completion-services.css ===== */
/* Scoped detail system: calm service information, original photography, brand accents. */
body.jx-site .cs-page { --cs-line:#d8ded5; --cs-muted:#606c63; background:#f6f5ef; color:#173328; }
body.jx-site .cs-page *,body.jx-site .cs-page *::before,body.jx-site .cs-page *::after { box-sizing:border-box; }
body.jx-site .cs-wrap { width:min(1160px,calc(100% - 80px)); margin-inline:auto; }
body.jx-site .cs-page :is(h1,h2,h3,p,figure) { margin:0; }
body.jx-site .cs-page h1 { font-size:clamp(34px,4vw,55px); line-height:1.3; font-weight:700; letter-spacing:-.025em; color:#093e2d; }
body.jx-site .cs-page h2 { font-size:clamp(26px,2.7vw,36px); line-height:1.4; font-weight:700; color:#093e2d; }
body.jx-site .cs-page h3 { font-size:19px; line-height:1.5; font-weight:700; }
body.jx-site .cs-page p { color:var(--cs-muted); font-size:16px; line-height:1.95; }
body.jx-site .cs-page a { text-decoration:none; }
body.jx-site .cs-crumb { display:flex; gap:10px; flex-wrap:wrap; font-size:13px; color:#717d74; padding-top:28px; }
body.jx-site .cs-crumb a:hover { color:#155d43; text-decoration:underline; }
body.jx-site .cs-hero { padding:52px 0 64px; }
body.jx-site .cs-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:72px; }
body.jx-site .cs-kicker { display:block; margin-bottom:20px; font-size:13px; font-weight:700; color:#155d43; letter-spacing:.1em; }
body.jx-site .cs-kicker::before { content:""; display:inline-block; width:28px; height:3px; margin-right:12px; background:#e77935; vertical-align:middle; }
body.jx-site .cs-lead { max-width:620px; margin-top:24px; }
body.jx-site .cs-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
body.jx-site .cs-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:48px; padding:12px 22px; border-radius:4px; border:1px solid #155d43; color:#fff; background:#155d43; font-size:15px; font-weight:700; }
body.jx-site .cs-button:hover { background:#093e2d; border-color:#093e2d; }
body.jx-site .cs-button-light { color:#155d43; background:transparent; border-color:#b2c1b5; }
body.jx-site .cs-button-light:hover { background:#edf1e9; border-color:#155d43; }
body.jx-site .cs-photo { margin:0; background:#fff; }
body.jx-site .cs-photo img { display:block; width:100%; height:430px; object-fit:cover; filter:none; opacity:1; }
body.jx-site .cs-photo figcaption { color:#647166; font-size:12px; line-height:1.8; padding:12px 14px; border:1px solid var(--cs-line); border-top:0; }
body.jx-site .cs-brief { padding:32px 30px; border-top:3px solid #155d43; border-bottom:1px solid var(--cs-line); background:#fff; }
body.jx-site .cs-brief > strong { font-size:20px; font-weight:700; }
body.jx-site .cs-brief dl { margin:22px 0 0; }
body.jx-site .cs-brief dl > div { border-top:1px solid var(--cs-line); padding:16px 0; }
body.jx-site .cs-brief dt { color:#6d796f; font-size:13px; }
body.jx-site .cs-brief dd { margin:4px 0 0; font-size:16px; line-height:1.8; }
body.jx-site .cs-jump { border-block:1px solid var(--cs-line); background:#fff; }
body.jx-site .cs-jump .cs-wrap { display:flex; gap:32px; flex-wrap:wrap; padding-block:17px; }
body.jx-site .cs-jump a { color:#59695d; font-size:14px; padding:3px 0; }
body.jx-site .cs-jump a:hover { color:#155d43; }
body.jx-site .cs-section { padding:76px 0; scroll-margin-top:130px; }
body.jx-site .cs-section-white { background:#fff; }
body.jx-site .cs-section-head { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; margin-bottom:34px; align-items:start; }
body.jx-site .cs-section-head .cs-kicker { margin-bottom:12px; }
body.jx-site .cs-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:48px; }
body.jx-site .cs-item { display:grid; grid-template-columns:38px 1fr; gap:16px; padding:26px 0; border-top:1px solid var(--cs-line); background:transparent; border-radius:0; }
body.jx-site .cs-number { color:#b26b39; font-size:14px; font-weight:700; padding-top:5px; }
body.jx-site .cs-item h3 { margin-bottom:9px; }
body.jx-site .cs-item p { font-size:15px; }
body.jx-site .cs-note { padding:22px 26px; margin-top:30px; border-left:3px solid #e77935; background:#f4f2e9; }
body.jx-site .cs-note strong { display:block; margin-bottom:6px; font-size:15px; color:#173328; }
body.jx-site .cs-note p { font-size:14px; }
body.jx-site .cs-plan { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; }
body.jx-site .cs-plan-intro p { margin-top:18px; }
body.jx-site .cs-plan dl { margin:0; }
body.jx-site .cs-plan dl > div { display:grid; grid-template-columns:116px 1fr; gap:24px; padding:20px 0; border-top:1px solid var(--cs-line); }
body.jx-site .cs-plan dt { font-size:15px; font-weight:700; }
body.jx-site .cs-plan dd { margin:0; color:var(--cs-muted); font-size:15px; line-height:1.9; }
body.jx-site .cs-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; margin-top:34px; list-style:none; padding:0; }
body.jx-site .cs-process li { padding-top:18px; border-top:2px solid #c5d0c4; }
body.jx-site .cs-process span { display:block; color:#155d43; font-size:25px; margin-bottom:12px; }
body.jx-site .cs-process h3 { font-size:18px; margin-bottom:10px; }
body.jx-site .cs-process p { font-size:14px; }
body.jx-site .cs-faq-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; }
body.jx-site .cs-faq details { border-top:1px solid var(--cs-line); padding:0; }
body.jx-site .cs-faq details:last-child { border-bottom:1px solid var(--cs-line); }
body.jx-site .cs-faq summary { list-style:none; cursor:pointer; padding:22px 38px 22px 0; position:relative; font-weight:700; line-height:1.65; }
body.jx-site .cs-faq summary::-webkit-details-marker { display:none; }
body.jx-site .cs-faq summary::after { content:"+"; position:absolute; right:0; top:20px; color:#155d43; font-size:22px; }
body.jx-site .cs-faq details[open] summary::after { content:"−"; }
body.jx-site .cs-faq details p { padding:0 26px 24px 0; font-size:15px; }
body.jx-site .cs-contact { margin-top:4px; padding:40px 0; background:#edf1e9; border-block:1px solid var(--cs-line); }
body.jx-site .cs-contact .cs-wrap { display:flex; align-items:center; justify-content:space-between; gap:30px; }
body.jx-site .cs-contact h2 { font-size:26px; margin-bottom:9px; }
body.jx-site .cs-contact p { font-size:14px; }
body.jx-site .cs-contact .cs-actions { margin:0; flex-shrink:0; }
body.jx-site .cs-related { padding:34px 0 46px; }
body.jx-site .cs-related .cs-wrap { display:flex; align-items:center; flex-wrap:wrap; gap:15px 28px; }
body.jx-site .cs-related strong { color:#647166; font-size:13px; margin-right:8px; font-weight:500; }
body.jx-site .cs-related a { color:#155d43; font-size:14px; border-bottom:1px solid #b5c5b8; padding:4px 0; }
body.jx-site .cs-wide-photo { margin:36px 0 0; }
body.jx-site .cs-wide-photo img { display:block; width:100%; aspect-ratio:2.1/1; object-fit:cover; filter:none; }
body.jx-site .cs-wide-photo figcaption { font-size:12px; line-height:1.8; color:#667368; margin-top:12px; }
body.jx-site .cs-directory { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
body.jx-site .cs-directory article { padding:24px 0; border-top:1px solid var(--cs-line); }
body.jx-site .cs-directory h3 { font-size:18px; }
body.jx-site .cs-directory p { font-size:14px; margin-top:8px; }
body.jx-site .cs-directory small { display:block; color:#667368; font-size:12px; margin-top:8px; }
@media(max-width:980px) { body.jx-site .cs-wrap { width:calc(100% - 40px); } body.jx-site .cs-hero-grid { gap:36px; } body.jx-site .cs-section-head,body.jx-site .cs-plan,body.jx-site .cs-faq-layout { gap:40px; } body.jx-site .cs-process { grid-template-columns:repeat(2,minmax(0,1fr)); } body.jx-site .cs-contact .cs-wrap { align-items:start; flex-direction:column; } }
@media(max-width:700px) { body.jx-site .cs-hero { padding:34px 0 42px; } body.jx-site .cs-hero-grid,body.jx-site .cs-section-head,body.jx-site .cs-plan,body.jx-site .cs-faq-layout { grid-template-columns:1fr; gap:28px; } body.jx-site .cs-page h1 { font-size:34px; } body.jx-site .cs-section { padding:48px 0; } body.jx-site .cs-photo img { height:360px; object-position:center; } body.jx-site .cs-items,body.jx-site .cs-directory { grid-template-columns:1fr; } body.jx-site .cs-jump .cs-wrap { gap:12px 24px; } body.jx-site .cs-brief { padding:25px; } body.jx-site .cs-process { gap:24px; } body.jx-site .cs-plan dl > div { grid-template-columns:86px 1fr; gap:14px; } body.jx-site .cs-note { padding:20px; } body.jx-site .cs-wide-photo img { aspect-ratio:4/3; } }
@media(prefers-reduced-motion:reduce) { body.jx-site .cs-page { scroll-behavior:auto; } }

/* ===== styles/consultation.css ===== */
body.jx-site .cx-page{background:#f6f5ef;color:#263e32;padding:0 0 72px;font-family:"Microsoft YaHei",sans-serif}
.cx-wrap{width:min(1240px,calc(100% - 80px));margin:auto}
.cx-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;padding:25px 0;font-size:12px;color:#5b675e}
.cx-tabs{display:flex;border-bottom:1px solid #cad3c9;gap:32px}
.cx-tabs a{display:flex;align-items:center;gap:12px;padding:16px 0;color:#56655a;border-bottom:3px solid transparent;font-size:16px}
.cx-tabs a span{font-size:11px;color:#627365}
.cx-tabs a[aria-current]{border-color:#e77935;color:#155d43;font-weight:600}
.cx-hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:56px 0 64px}
.cx-kicker{font-size:12px;letter-spacing:2px;color:#155d43;margin:0 0 20px}
body.jx-site main.cx-page h1{font-size:clamp(32px,3.5vw,48px);font-weight:600;line-height:1.4;letter-spacing:-1px;color:#093e2d;margin:0 0 22px}
.cx-lead{font-size:16px;line-height:1.95;color:#526156;max-width:490px;margin:0 0 24px}
.cx-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}
.cx-button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;background:#155d43;color:#fff!important;border:1px solid #155d43;border-radius:3px;padding:15px 23px;min-height:50px;font:inherit;font-size:14px;cursor:pointer;text-decoration:none}
.cx-button:hover{background:#093e2d}.cx-button:disabled{opacity:.6;cursor:wait}
.cx-text-link{background:none;border:0;padding:8px 0;color:#155d43;font:inherit;font-size:14px;cursor:pointer;text-underline-offset:6px;text-decoration:underline}
.cx-caption{color:#5b675e;font-size:12px;line-height:1.8;margin:22px 0 0}
.cx-photo{margin:0;position:relative}.cx-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:3px;filter:none}
.cx-photo figcaption{font-size:12px;color:#5a675d;padding-top:12px;display:flex;align-items:center;gap:10px}
.cx-photo figcaption:before{content:"";width:22px;height:2px;background:#e77935}
.cx-section{padding:48px 0;border-top:1px solid #cbd4ca;scroll-margin-top:140px}
.cx-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.cx-section-head .cx-kicker{margin-bottom:12px}
body.jx-site main.cx-page h2{font-size:clamp(23px,2.2vw,30px);font-weight:500;color:#173c2b;line-height:1.5;margin:0}
.cx-section-head>p{font-size:13px;color:#59675d;margin:0}
body.jx-site main.cx-page h3{font-size:20px;font-weight:500;color:#193d2c;line-height:1.6;margin:12px 0}
.cx-courses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d2dad0;border-left:1px solid #d2dad0}
.cx-courses article{padding:28px;background:#fff;border-right:1px solid #d2dad0;border-bottom:1px solid #d2dad0}
.cx-number{font-size:12px;letter-spacing:2px;color:#687760}
.cx-courses p{font-size:14px;color:#58665c;line-height:1.8;margin:0 0 28px}
.cx-courses article>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#155d43}
.cx-courses a:hover{text-decoration:underline}
.cx-more{display:flex;flex-wrap:wrap;gap:16px 24px;padding:24px 0 0;font-size:13px;color:#155d43}
.cx-more>span{color:#657261}
.cx-guidance{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}
.cx-guidance .cx-text-link{display:inline-block;margin-top:20px}
.cx-faq details{border-bottom:1px solid #d0d8ce;padding:22px 0}
.cx-faq details:first-child{padding-top:0}
.cx-faq summary{cursor:pointer;font-size:17px;line-height:1.6;color:#294735}
.cx-faq p{font-size:14px;line-height:1.9;color:#58665c;margin:14px 0 0}
.cx-booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:56px 0;align-items:start;scroll-margin-top:140px}
.cx-direct{border-left:3px solid #e77935;padding:4px 0 4px 22px;margin:32px 0}
.cx-direct>span{font-size:13px;color:#526156}.cx-direct>a{display:block;font-size:26px;font-weight:500;letter-spacing:.5px;color:#155d43;margin:10px 0}
.cx-direct p{font-size:12px;color:#5e6c60;line-height:1.8;margin:0}
.cx-mini-steps{list-style:none;margin:0;padding:0}.cx-mini-steps li{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid #d5dccf;font-size:14px;line-height:1.6}.cx-mini-steps span{color:#6c7a60;font-size:12px}
.cx-form{padding:32px;background:#fff;border:1px solid #d4dccf;border-top:3px solid #155d43;border-radius:3px}
.cx-form-heading{margin-bottom:24px}.cx-form-heading .cx-kicker{display:block;margin-bottom:8px}.cx-form-heading p{font-size:12px;color:#5b695e;margin:8px 0 0}
.cx-field{display:block;font-size:14px;color:#2c4937;line-height:1.6;margin-bottom:20px}
.cx-field input,.cx-field select,.cx-field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:13px 12px;margin-top:8px;background:#fcfcf8;border:1px solid #bbc8b8;color:#253e2e;border-radius:3px;font:inherit;font-size:16px;line-height:1.5}
.cx-field textarea{resize:vertical;min-height:110px}.cx-field-row{display:grid;grid-template-columns:1fr 1.25fr;gap:18px}.cx-field-row>*{min-width:0}
.cx-field input::placeholder,.cx-field textarea::placeholder{color:#687569;opacity:1}
.cx-optional{font-size:12px;color:#63705f;margin-left:8px}.cx-form-note{font-size:12px;color:#5b6b5d;margin:-10px 0 20px}
.cx-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;color:#4c5f50;margin:20px 0}.cx-consent input{accent-color:#155d43;width:17px;height:17px;flex-shrink:0;margin-top:2px}
.cx-form>.cx-button{width:100%}.cx-feedback{font-size:12px;color:#55674e;line-height:1.8;margin:14px 0 0;min-height:22px}.cx-feedback[data-state="error"]{color:#a32b20}.cx-feedback[data-state="success"]{color:#155d43;font-weight:600}
.cx-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.cx-steps li{border-top:2px solid #b8ca4b;padding-top:22px}.cx-steps li>span{font-size:12px;color:#657557}.cx-steps p{font-size:14px;line-height:1.9;color:#526353;margin:0}
.cx-phone{display:block;font-size:clamp(24px,2.7vw,36px);font-weight:500;letter-spacing:.4px;color:#155d43;margin-top:24px}.cx-phone span{font-size:22px}.cx-contact-hero .cx-caption{margin-top:8px}
.cx-location{display:grid;grid-template-columns:1fr 1fr;gap:70px}.cx-location address{font-style:normal;font-size:22px;line-height:1.9;margin:22px 0;color:#2c4632}
.cx-arrival{background:#eaf0e4;border-left:3px solid #b8ca4b;padding:30px}.cx-arrival p,.cx-arrival dd{font-size:14px;line-height:1.9;color:#4e6350}.cx-arrival dl{margin:24px 0 0}.cx-arrival dl>div{padding:14px 0;border-top:1px solid #cbd5c4}.cx-arrival dt{font-size:14px;color:#284831}.cx-arrival dd{margin:5px 0 0}
.cx-contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.cx-contact-links>a{padding:24px 0;border-top:2px solid #b8ca4b}.cx-contact-links>a:hover h3{text-decoration:underline;text-underline-offset:5px}.cx-contact-links span{font-size:12px;color:#607154}.cx-contact-links p{font-size:14px;color:#526353;line-height:1.8}
.cx-page :focus-visible{outline:3px solid #e77935;outline-offset:4px}
@media(max-width:1000px){.cx-wrap{width:calc(100% - 48px)}.cx-hero,.cx-booking-layout,.cx-location{gap:32px}.cx-courses{grid-template-columns:repeat(2,minmax(0,1fr))}.cx-form{padding:24px}.cx-field-row{grid-template-columns:1fr;gap:0}.cx-tabs{gap:24px}}
@media(max-width:720px){.cx-wrap{width:calc(100% - 36px)}.cx-tabs{gap:0;justify-content:space-between}.cx-tabs a{gap:8px;font-size:14px}.cx-breadcrumb{gap:8px;font-size:11px;padding:20px 0}.cx-hero,.cx-booking-layout,.cx-location,.cx-guidance{grid-template-columns:1fr;gap:32px;padding:32px 0}.cx-section{padding:32px 0}.cx-lead{font-size:15px}.cx-photo img{aspect-ratio:4/3}.cx-section-head{display:block}.cx-section-head>p{margin-top:14px}.cx-courses{grid-template-columns:1fr}.cx-courses article{padding:24px}.cx-courses p{margin-bottom:20px}.cx-steps,.cx-contact-links{grid-template-columns:1fr;gap:24px}.cx-form{padding:22px 18px}.cx-form-note{line-height:1.8}.cx-arrival{padding:24px}.cx-location address{font-size:20px}.cx-contact-links>a{padding:18px 0 0}.cx-page{padding-bottom:40px!important}}

/* ===== styles/faculty.css ===== */
/* Representative faculty archive · 2026 visual system */
body.jx-site .faculty-page{
  --faculty-forest:#093e2d;
  --faculty-green:#155d43;
  --faculty-moss:#28734f;
  --faculty-gold:#c9943d;
  --faculty-gold-soft:#e6c37f;
  --faculty-paper:#f6f5ef;
  --faculty-ink:#183c2d;
  --faculty-muted:#64746a;
  background:
    radial-gradient(circle at 12% 7%,rgba(201,148,61,.13),transparent 23rem),
    linear-gradient(180deg,#f6f5ef 0%,#fbfbf7 32%,#f1f3ec 100%);
  color:var(--faculty-ink);
  padding:0 0 92px;
  overflow:hidden;
}
.faculty-wrap{width:min(1240px,calc(100% - 72px));margin:auto;position:relative}
.faculty-breadcrumb{display:flex;gap:12px;align-items:center;padding:26px 0;font-size:13px;color:#66766c;letter-spacing:.02em}
.faculty-breadcrumb a{color:inherit;text-decoration:none}.faculty-breadcrumb a:hover{color:var(--faculty-green);text-decoration:underline}
.faculty-intro{position:relative;display:flex;justify-content:space-between;gap:56px;align-items:center;min-height:360px;padding:58px 58px 62px;border-radius:4px;overflow:hidden;background:var(--faculty-forest);color:#fff;box-shadow:0 26px 60px rgba(9,62,45,.14)}
.faculty-intro::before,.faculty-intro::after{content:"";position:absolute;pointer-events:none}
.faculty-intro::before{inset:18px;border:1px solid rgba(230,195,127,.33);clip-path:polygon(0 0,100% 0,100% 100%,64% 100%,61% 94%,0 94%)}
.faculty-intro::after{width:440px;height:440px;right:-120px;top:-200px;border:1px solid rgba(230,195,127,.24);border-radius:50%;box-shadow:0 0 0 18px rgba(230,195,127,.05),0 0 0 38px rgba(230,195,127,.04)}
.faculty-intro-copy{position:relative;z-index:1;max-width:740px}.faculty-eyebrow{margin:0 0 18px;color:var(--faculty-gold-soft);font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase}
body.jx-site main.faculty-page h1{margin:0 0 20px;color:#fff;font-size:clamp(38px,5vw,68px);font-weight:800;line-height:1.08;letter-spacing:-.04em}
.faculty-lead{margin:0;color:rgba(255,255,255,.78);font-size:16px;line-height:1.95;letter-spacing:.02em}.faculty-intro-note{position:relative;z-index:1;min-width:210px;padding:22px 0 22px 28px;border-left:2px solid var(--faculty-gold);color:#fff}.faculty-intro-note>span{display:block;color:var(--faculty-gold-soft);font-size:10px;letter-spacing:.2em}.faculty-intro-note strong{display:block;margin:14px 0 4px;font:700 64px/.9 Georgia,serif;color:#fff}.faculty-intro-note strong small{font:500 18px/1.2 sans-serif;color:var(--faculty-gold-soft);letter-spacing:.06em}.faculty-intro-note p{margin:10px 0 0;color:rgba(255,255,255,.68);font-size:13px}.faculty-intro-note i{display:block;width:54px;height:1px;margin-top:24px;background:var(--faculty-gold)}
.faculty-index{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:22px 0 0;padding:16px 18px;border:1px solid rgba(21,93,67,.14);background:rgba(250,251,246,.9);backdrop-filter:blur(12px);box-shadow:0 8px 26px rgba(9,62,45,.05)}
.faculty-index-label{margin-right:8px;color:var(--faculty-green);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.faculty-index a{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border:1px solid transparent;color:var(--faculty-ink);font-size:13px;text-decoration:none;transition:color .2s,border-color .2s,background .2s}.faculty-index a:hover,.faculty-index a:focus-visible{border-color:var(--faculty-gold-soft);background:#fff;color:var(--faculty-green)}
.faculty-section-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:72px 0 28px;padding-bottom:20px;border-bottom:1px solid rgba(21,93,67,.2)}
.faculty-section-title .faculty-eyebrow{margin-bottom:10px;color:var(--faculty-green)}body.jx-site main.faculty-page h2{margin:0;color:var(--faculty-forest);font-size:clamp(28px,3vw,42px);line-height:1.16;font-weight:800;letter-spacing:-.03em}.faculty-section-title>p{margin:0;color:var(--faculty-muted);font-size:13px}
.faculty-grid{display:grid;grid-template-columns:1fr;gap:28px}.faculty-profile{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);min-width:0;scroll-margin-top:98px;border:1px solid rgba(21,93,67,.16);background:rgba(255,255,255,.82);box-shadow:0 18px 44px rgba(20,65,48,.07);transition:transform .25s ease,box-shadow .25s ease}.faculty-profile:hover{transform:translateY(-3px);box-shadow:0 24px 52px rgba(20,65,48,.12)}.faculty-profile--reverse{grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr)}.faculty-profile--reverse .faculty-photo{order:2}.faculty-profile--reverse .faculty-copy{order:1}
.faculty-photo{position:relative;display:flex;align-items:center;justify-content:center;min-height:420px;margin:0;padding:30px;background:linear-gradient(150deg,#e9eee7,#f8f8f2 64%,#edf1e9);overflow:hidden}.faculty-photo::before{content:"";position:absolute;inset:16px;border:1px solid rgba(201,148,61,.38);pointer-events:none}.faculty-photo::after{content:"";position:absolute;width:240px;height:240px;right:-80px;top:-90px;border:1px solid rgba(21,93,67,.14);border-radius:50%;box-shadow:0 0 0 18px rgba(21,93,67,.04),0 0 0 38px rgba(21,93,67,.025)}.faculty-photo-button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:360px;padding:0;border:0;background:transparent;cursor:zoom-in}.faculty-photo-button img{display:block;width:100%;height:100%;max-height:530px;object-fit:cover;object-position:center;border:10px solid #fff;box-shadow:0 15px 35px rgba(9,62,45,.14)}.faculty-photo[data-photo-fit="contain"] .faculty-photo-button img{object-fit:contain}.faculty-photo-count{position:absolute;left:10px;top:10px;display:inline-flex;align-items:baseline;gap:5px;padding:8px 11px;background:var(--faculty-forest);color:var(--faculty-gold-soft);font:700 15px/1 Georgia,serif;letter-spacing:.08em}.faculty-photo-count span{font:500 10px/1 sans-serif;color:rgba(255,255,255,.64)}.faculty-photo-zoom{position:absolute;right:10px;bottom:10px;padding:9px 12px;background:#fff;color:var(--faculty-green);font-size:11px;letter-spacing:.08em;opacity:0;transition:opacity .2s}.faculty-photo-button:hover .faculty-photo-zoom,.faculty-photo-button:focus-visible .faculty-photo-zoom{opacity:1}
.faculty-copy{display:flex;flex-direction:column;min-width:0;padding:42px 44px 36px}.faculty-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(201,148,61,.4)}.faculty-role{margin:0 0 9px;color:var(--faculty-green);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.faculty-card-head h3{margin:0;color:var(--faculty-forest);font-size:clamp(28px,3vw,43px);font-weight:800;line-height:1.15;letter-spacing:-.04em}.faculty-card-head h3 small{margin-left:10px;color:var(--faculty-gold);font-size:13px;font-weight:600;letter-spacing:.08em}.faculty-card-index{color:var(--faculty-gold);font:700 24px/1 Georgia,serif;letter-spacing:.1em}.faculty-meta{display:grid;grid-template-columns:1fr;margin:22px 0 0}.faculty-meta div{display:flex;gap:14px;align-items:baseline}.faculty-meta dt{flex:none;color:var(--faculty-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.faculty-meta dd{margin:0;color:var(--faculty-ink);font-size:15px;line-height:1.7;font-weight:700}.faculty-summary{max-width:650px;margin:18px 0 0;color:#52655a;font-size:15px;line-height:1.85}.faculty-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}.faculty-detail-block{min-width:0}.faculty-detail-block h4{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:var(--faculty-green);font-size:12px;letter-spacing:.13em}.faculty-detail-block h4::before{content:"";display:block;width:20px;height:2px;background:var(--faculty-gold)}.faculty-list{margin:0;padding:0;list-style:none}.faculty-list li{position:relative;margin:0 0 8px;padding-left:14px;color:#41584a;font-size:13px;line-height:1.65}.faculty-list li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--faculty-gold)}.faculty-list--honors li::before{background:var(--faculty-green)}.faculty-detail-block--note p{margin:0;color:#52655a;font-size:13px;line-height:1.75}.faculty-image-link{display:inline-flex;align-items:center;gap:14px;width:max-content;max-width:100%;margin-top:auto;padding-top:24px;color:var(--faculty-green);font-size:12px;font-weight:800;letter-spacing:.08em;text-decoration:none}.faculty-image-link span{color:var(--faculty-gold);font-size:17px;transition:transform .2s}.faculty-image-link:hover span{transform:translate(3px,-3px)}
.faculty-end{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:72px;padding:34px 0;border-top:1px solid rgba(21,93,67,.22)}.faculty-end .faculty-eyebrow{margin-bottom:11px;color:var(--faculty-green)}.faculty-end h2{font-size:clamp(25px,3vw,36px)!important}.faculty-end p:not(.faculty-eyebrow){margin:10px 0 0;color:var(--faculty-muted);font-size:14px}.faculty-end>a{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 22px;background:var(--faculty-green);color:#fff;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.faculty-end>a span{color:var(--faculty-gold-soft);font-size:18px}
.faculty-page :focus-visible{outline:3px solid var(--faculty-gold);outline-offset:4px}.faculty-viewer{margin:auto;width:min(1000px,96vw);max-width:none;height:94dvh;max-height:94dvh;padding:0;border:0;background:#f6f5ef;color:var(--faculty-ink);overflow:hidden}.faculty-viewer[open]{display:flex;flex-direction:column}.faculty-viewer::backdrop{background:rgba(5,29,20,.86)}.faculty-toolbar{display:flex;align-items:center;gap:20px;flex-shrink:0;padding:14px 20px;border-bottom:1px solid #d0d8d0;background:#fff}.faculty-toolbar strong{margin-right:auto;font-size:17px}.faculty-toolbar a{color:var(--faculty-green);font-size:13px;text-decoration:underline}.faculty-toolbar button,.faculty-pager button{padding:9px 14px;border:1px solid #b9c7bb;border-radius:0;background:#fff;color:var(--faculty-green);cursor:pointer;font:inherit;font-size:14px}.faculty-image-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.faculty-image-scroll img{display:block;width:auto;max-width:100%;height:auto;min-height:100%;margin:auto;object-fit:contain}.faculty-pager{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:10px 20px;border-top:1px solid #d0d8d0;background:#fff;font-size:13px}.faculty-pager button:disabled{opacity:.4;cursor:default}body.faculty-viewing{overflow:hidden}
@media(max-width:920px){.faculty-wrap{width:min(calc(100% - 42px),720px)}.faculty-intro{padding:44px 36px}.faculty-intro-note{min-width:175px}.faculty-profile,.faculty-profile--reverse{grid-template-columns:1fr}.faculty-profile--reverse .faculty-photo{order:1}.faculty-profile--reverse .faculty-copy{order:2}.faculty-photo{min-height:360px}.faculty-copy{padding:34px 32px}.faculty-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){body.jx-site .faculty-page{padding-bottom:56px}.faculty-wrap{width:calc(100% - 28px)}.faculty-breadcrumb{padding:18px 0;font-size:12px}.faculty-intro{display:block;min-height:0;padding:36px 24px 34px}.faculty-intro::before{inset:12px}.faculty-intro-note{display:flex;align-items:center;gap:16px;min-width:0;margin-top:30px;padding:15px 0 0;border-top:1px solid rgba(230,195,127,.55);border-left:0}.faculty-intro-note strong{margin:0;font-size:43px}.faculty-intro-note p{margin:0}.faculty-intro-note i{display:none}.faculty-lead{font-size:14px}.faculty-index{position:relative;top:auto;margin-top:14px;padding:13px;gap:5px}.faculty-index-label{width:100%;margin:0 0 4px}.faculty-index a{min-height:30px;padding:0 8px;font-size:12px}.faculty-section-title{display:block;margin:46px 0 20px}.faculty-section-title>p{margin-top:10px}.faculty-grid{gap:18px}.faculty-profile,.faculty-profile--reverse{display:block}.faculty-photo{min-height:310px;padding:22px}.faculty-photo::before{inset:11px}.faculty-photo-button{min-height:260px}.faculty-photo-button img{max-height:350px;border-width:7px}.faculty-photo-zoom{opacity:1;font-size:10px;padding:8px}.faculty-copy{padding:25px 21px 24px}.faculty-card-head h3{font-size:31px}.faculty-card-index{font-size:20px}.faculty-meta{margin-top:18px}.faculty-meta div{display:block}.faculty-meta dt{display:block;margin-bottom:4px}.faculty-meta dd{font-size:14px}.faculty-summary{font-size:14px;line-height:1.75}.faculty-detail-grid{grid-template-columns:1fr;gap:18px;margin-top:20px}.faculty-list li{font-size:12px}.faculty-image-link{padding-top:20px;font-size:11px}.faculty-end{display:block;margin-top:48px;padding-top:28px}.faculty-end>a{width:100%;margin-top:22px}.faculty-toolbar{flex-wrap:wrap;gap:10px;padding:12px}.faculty-toolbar strong{font-size:15px}.faculty-toolbar a{font-size:12px}.faculty-toolbar button{padding:8px}.faculty-pager{padding:10px 12px}}

/* ===== styles/home-real.css ===== */
/* Home only: natural photography and readable brand colors. */
body.jx-site .hx-page{background:#f7f6f1;color:#263b31;font-size:16px;line-height:1.8}
.hx-page *{box-sizing:border-box}.hx-wrap{width:min(1200px,calc(100% - 64px));margin:auto}
.hx-page :is(h1,h2,h3,p,figure){margin:0}.hx-page img{display:block;width:100%;height:auto;filter:none;opacity:1}
.hx-label{color:#155d43;font-size:13px;font-weight:700;letter-spacing:.08em;margin-bottom:16px!important}.hx-label:before{content:'';display:inline-block;width:22px;height:3px;background:#e77935;margin-right:10px;vertical-align:middle}
.hx-hero{padding:62px 0 42px;display:grid;grid-template-columns:.86fr 1.14fr;gap:48px;align-items:center}
.hx-hero.hx-team-hero{grid-template-columns:1fr;gap:34px;padding-top:48px}
.hx-team-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end}
.hx-team-heading .hx-lead{max-width:540px}
.hx-hero.hx-team-hero h1{margin-bottom:0}
.hx-hero.hx-team-hero figure img{aspect-ratio:auto;height:auto;object-fit:contain}
.hx-team-photo-link{display:block;cursor:zoom-in}
body.jx-site .hx-page h1{font-size:clamp(32px,3.5vw,49px);line-height:1.35;color:#093e2d;letter-spacing:0;text-wrap:initial;margin-bottom:24px}
.hx-lead{max-width:460px;color:#526158;font-size:17px}.hx-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hx-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:#155d43;color:white;border:1px solid #155d43;border-radius:3px;padding:12px 22px;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.hx-button:hover{background:#093e2d;color:#fff}.hx-outline{background:transparent;color:#155d43}
.hx-page figcaption{font-size:12px;color:#526158;margin-top:10px}.hx-hero figure img{aspect-ratio:4/3;object-fit:contain}
.hx-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #d5ddd3;padding:20px 0;gap:20px}.hx-shortcuts a{display:flex;align-items:center;justify-content:space-between;color:#155d43;font-size:15px;padding:4px 16px;border-right:1px solid #d5ddd3}.hx-shortcuts a:last-child{border:0}.hx-shortcuts a:hover{text-decoration:underline}
.hx-section{padding:76px 0;scroll-margin-top:125px}.hx-white{background:#fff}.hx-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.hx-heading>p{max-width:425px;color:#526158;font-size:15px}
body.jx-site .hx-page h2{font-size:clamp(25px,2.6vw,35px);line-height:1.4;letter-spacing:0;color:#093e2d}body.jx-site .hx-page h3{font-size:20px;line-height:1.5;color:#173328;letter-spacing:0}
.hx-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.hx-service{display:grid;grid-template-columns:42% 1fr;gap:25px;align-items:center;border-bottom:1px solid #d5ddd3;padding-bottom:25px}.hx-service img{aspect-ratio:4/5;object-fit:cover}.hx-service p{font-size:15px;color:#526158;margin:12px 0}.hx-text-link{display:inline-flex;gap:20px;color:#155d43;font-size:14px;font-weight:700}.hx-text-link:hover{text-decoration:underline}
.hx-links{display:flex;flex-wrap:wrap;gap:12px 28px;border-top:1px solid #d5ddd3;margin-top:32px;padding-top:22px}.hx-links a{color:#155d43;font-size:14px}.hx-links a:hover{text-decoration:underline}
.hx-training{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.hx-training img{aspect-ratio:4/3;object-fit:contain}.hx-course-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.hx-course-list a{padding:18px 0;border-bottom:1px solid #d5ddd3;display:block}.hx-course-list strong{display:block;color:#173328;font-size:17px}.hx-course-list span{font-size:13px;color:#526158}.hx-course-list a:hover strong{color:#155d43;text-decoration:underline}
.hx-about{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.hx-about p:not(.hx-label){margin:20px 0;color:#526158}.hx-about img{aspect-ratio:4/3;object-fit:contain}.hx-school-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.hx-school-photos img{aspect-ratio:4/3;object-fit:contain}
.hx-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:44px 0;border-top:2px solid #155d43}.hx-bottom p{color:#526158;margin-top:16px}.hx-bottom-links{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hx-bottom-links a{padding-bottom:12px;border-bottom:1px solid #d5ddd3;color:#155d43}
@media(max-width:800px){.hx-wrap{width:calc(100% - 36px)}.hx-hero,.hx-training,.hx-about,.hx-bottom{grid-template-columns:1fr;gap:28px}.hx-hero{padding:35px 0}.hx-shortcuts{grid-template-columns:1fr 1fr;gap:12px}.hx-shortcuts a{padding:6px;border:0}.hx-section{padding:45px 0}.hx-heading{display:block}.hx-heading>p{margin-top:16px}.hx-service-grid{grid-template-columns:1fr}.hx-service{gap:20px}.hx-school-photos{gap:14px}.hx-course-list{gap:0 20px}.hx-bottom{padding:30px 0}.hx-page .hx-lead{font-size:16px}}
@media(max-width:800px){.hx-team-heading{grid-template-columns:1fr;gap:22px}.hx-hero.hx-team-hero{padding-top:32px;gap:26px}.hx-team-heading .hx-actions{margin-top:20px}}

/* ===== styles/nursery-real.css ===== */
body.jx-site .legacy-nursery-page{display:none!important}
body.jx-site .nursery-real-page{background:#f7f6f1;color:#263b31}
.nursery-real-page .nr-wrap{width:min(1160px,calc(100% - 64px));margin:auto}
.nursery-real-page .nr-hero-real{display:grid;grid-template-columns:1fr 1.12fr;gap:52px;align-items:center;padding:58px 0 64px}
.nursery-real-page .nr-kicker{color:#155d43;font-size:13px;font-weight:700;letter-spacing:.1em;margin-bottom:16px}.nursery-real-page .nr-kicker:before{content:'';display:inline-block;width:22px;height:3px;background:#e77935;margin-right:10px;vertical-align:middle}
.nursery-real-page h1{color:#093e2d;font-size:clamp(32px,4vw,52px);line-height:1.3;letter-spacing:0;margin:0 0 22px}.nursery-real-page h2{color:#093e2d;font-size:clamp(25px,2.6vw,35px);line-height:1.4;letter-spacing:0;margin:0}.nursery-real-page h3{color:#173328;font-size:20px;line-height:1.5;margin:9px 0}.nr-lead-real{color:#536258;font-size:17px;line-height:1.9;max-width:480px}.nr-actions-real{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.nr-btn-real{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid #155d43;border-radius:3px;background:#155d43;color:#fff;font-size:15px;font-weight:700}.nr-btn-real.outline{background:transparent;color:#155d43}.nr-btn-real:hover{background:#093e2d;color:#fff}.nr-hero-real figure{margin:0}.nr-hero-real figure img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.nr-real-page figcaption{font-size:13px;color:#536258;padding-top:10px}.nr-tabs-real{display:flex;gap:28px;border-block:1px solid #d9ddd4;padding:19px 0;color:#155d43;font-size:14px}.nr-tabs-real a:hover{text-decoration:underline}.nr-section-real{padding:76px 0;scroll-margin-top:120px}.nr-white-real{background:#fff}.nr-heading-real{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.nr-heading-real>p{max-width:430px;color:#536258;line-height:1.9;font-size:15px}.nr-grid-real{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.nr-grid-real article{border-top:2px solid #b8ca4b;padding-top:20px}.nr-grid-real span{color:#6c786e;font-size:13px}.nr-gallery-real{display:grid;grid-template-columns:1.25fr .9fr .9fr;gap:20px;align-items:start}.nr-gallery-real img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.nr-gallery-real figure{margin:0}.nr-steps-real{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.nr-steps-real article{border-top:1px solid #d9ddd4;padding-top:18px}.nr-steps-real strong{color:#155d43;font-size:25px}.nr-steps-real p{color:#536258;font-size:15px;line-height:1.8}.nr-contact-real{border-top:2px solid #155d43;padding:40px 0;display:flex;justify-content:space-between;align-items:center;gap:25px}.nr-contact-real p{color:#536258}.nr-contact-real .nr-actions-real{margin-top:0}
@media(max-width:760px){.nursery-real-page .nr-wrap{width:calc(100% - 36px)}.nursery-real-page .nr-hero-real{grid-template-columns:1fr;gap:28px;padding:36px 0 42px}.nr-heading-real{display:block}.nr-heading-real>p{margin-top:15px}.nr-grid-real,.nr-steps-real{grid-template-columns:1fr 1fr;gap:22px}.nr-gallery-real{grid-template-columns:1fr 1fr}.nr-gallery-real figure:first-child{grid-column:1/-1}.nr-tabs-real{gap:18px;flex-wrap:wrap}.nr-section-real{padding:48px 0}.nr-contact-real{display:block}.nr-contact-real .nr-actions-real{margin-top:20px}}

/* ===== styles/service-details.css ===== */
/* Scoped service pages: explicit foreground/background pairs, natural photo colors. */
body.jx-site .sd-page {background:#f7f6f1;color:#273b32;--sd-line:#d9ddd4;}
.sd-page *, .sd-viewer * {box-sizing:border-box;}
.sd-shell {width:min(1160px,calc(100% - 64px));margin:auto;}
.sd-page p,.sd-page figure,.sd-page h1,.sd-page h2,.sd-page h3 {margin:0;}
.sd-breadcrumb {padding:25px 0;font-size:13px;color:#536258;display:flex;gap:12px;}
.sd-breadcrumb a:hover {text-decoration:underline;}
.sd-hero {display:grid;grid-template-columns:1.08fr 1fr;gap:64px;align-items:center;padding:20px 0 64px;}
.sd-kicker {font-size:13px;font-weight:700;letter-spacing:.12em;color:#155d43;margin-bottom:18px!important;}
.sd-kicker::before {content:'';display:inline-block;width:20px;height:3px;background:#e77935;vertical-align:middle;margin-right:10px;}
body.jx-site .sd-page h1 {color:#093e2d;font-size:clamp(32px,3.5vw,48px);line-height:1.3;letter-spacing:0;margin-bottom:24px;text-wrap:initial;}
.sd-intro {font-size:17px;line-height:1.9;max-width:480px;color:#536258;}
.sd-actions {display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;}
.sd-action {display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 23px;border:1px solid #155d43;border-radius:3px;background:#155d43;color:#fff;font-size:15px;font-weight:600;cursor:pointer;}
.sd-action:hover {background:#093e2d;color:#fff;}
.sd-action-outline {background:transparent;color:#155d43;}
.sd-hero-note {font-size:13px;color:#536258;margin-top:23px!important;}
.sd-hero-photos {display:grid;grid-template-columns:1fr .8fr;gap:14px;align-items:center;}
.sd-hero-photos figure:nth-child(2) {margin-top:90px;}
.sd-photo {padding:0;border:0;background:#e9e7df;display:block;width:100%;cursor:zoom-in;overflow:hidden;}
.sd-photo img {display:block;width:100%;height:auto;filter:none;opacity:1;transition:none;}
.sd-page figcaption {font-size:13px;color:#536258;padding-top:10px;line-height:1.6;}
.sd-topics {display:flex;justify-content:space-between;border-block:1px solid var(--sd-line);padding:20px 0;gap:16px;flex-wrap:wrap;font-size:14px;color:#155d43;}
.sd-topics a:hover {text-decoration:underline;}
.sd-section {padding:76px 0;scroll-margin-top:130px;}
.sd-section-white {background:#fff;}
.sd-section-head {display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:36px;align-items:end;}
body.jx-site .sd-page h2 {font-size:clamp(25px,2.5vw,34px);color:#093e2d;line-height:1.4;letter-spacing:0;}
.sd-section-head>p {color:#536258;font-size:15px;line-height:1.9;}
.sd-services {display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.sd-services article {border-top:2px solid #b8ca4b;padding-top:22px;}
.sd-services span {color:#6b765c;font-size:13px;}
body.jx-site .sd-page h3 {font-size:20px;color:#173328;margin:10px 0;line-height:1.5;}
.sd-services p,.sd-steps p,.sd-faq p {font-size:15px;color:#536258;line-height:1.85;}
.sd-gallery {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px;align-items:start;}
.sd-gallery .sd-photo img {aspect-ratio:3/4;object-fit:contain;}
.sd-gallery-three {grid-template-columns:repeat(3,minmax(0,1fr));}
.sd-case-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.sd-case {margin:0;border-top:1px solid var(--sd-line);padding-top:18px;}
.sd-case-images {display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.sd-case-images img {aspect-ratio:3/4;object-fit:contain;}
.sd-case>p {font-size:14px;color:#536258;line-height:1.8;margin:8px 0 20px;}
.sd-more {margin-top:30px;}
.sd-more summary {cursor:pointer;font-size:16px;color:#155d43;padding:18px 0;border-block:1px solid var(--sd-line);margin-bottom:24px;}
.sd-steps {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;counter-reset:step;}
.sd-steps article {border-top:1px solid var(--sd-line);padding-top:20px;}
.sd-steps article::before {counter-increment:step;content:'0' counter(step);font-size:24px;color:#155d43;}
.sd-faq {margin-top:42px;}
.sd-faq details {border-bottom:1px solid var(--sd-line);padding:18px 0;}
.sd-faq summary {cursor:pointer;font-weight:600;color:#173328;}
.sd-faq p {padding:12px 0 0;}
.sd-contact {padding:40px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:2px solid #155d43;}
.sd-contact p {color:#536258;margin-top:12px;font-size:14px;}
.sd-viewer {border:0;padding:50px 18px 20px;background:#f7f6f1;width:min(960px,95vw);max-height:94dvh;color:#173328;}
.sd-viewer::backdrop {background:rgba(10,24,18,.8);}
.sd-viewer img {max-height:75dvh;max-width:100%;display:block;margin:auto;object-fit:contain;}
.sd-viewer p {text-align:center;padding:12px;margin:0;}
.sd-viewer button {position:absolute;top:10px;right:16px;padding:8px 14px;background:white;border:1px solid #536258;border-radius:3px;color:#173328;cursor:pointer;}
@media(max-width:760px){.sd-shell{width:calc(100% - 36px)}.sd-hero{grid-template-columns:1fr;gap:28px;padding-bottom:36px}.sd-hero-photos{max-width:530px}.sd-hero-photos figure:nth-child(2){margin-top:45px}.sd-section{padding:45px 0}.sd-section-head{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.sd-services{grid-template-columns:1fr;gap:25px}.sd-gallery,.sd-gallery-three{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.sd-steps{grid-template-columns:1fr 1fr;gap:24px}.sd-case-list{grid-template-columns:1fr}.sd-contact{display:block}.sd-contact .sd-actions{margin-top:20px}.sd-topics{justify-content:flex-start;gap:14px 24px}.sd-breadcrumb{font-size:12px}.sd-intro{font-size:16px}}

/* ===== styles/wechat-news.css ===== */
body.jx-site .wx-page{background:#f6f5ef;color:#304238;padding-bottom:64px}
.wx-wrap{width:min(1200px,calc(100% - 80px));margin:auto}.wx-article-wrap{width:min(820px,calc(100% - 64px));margin:auto}
.wx-crumb{display:flex;gap:12px;flex-wrap:wrap;padding:26px 0;font-size:13px;color:#5d6a61}
.wx-heading{padding:38px 0 44px;border-bottom:1px solid #c9d2c8}.wx-eyebrow{font-size:13px;color:#155d43;letter-spacing:2px;margin:0 0 18px}
body.jx-site main.wx-page h1{font-size:clamp(30px,3.4vw,46px);color:#093e2d;line-height:1.5;font-weight:600;margin:0 0 22px}
.wx-heading>p:last-child{font-size:16px;line-height:1.9;color:#58675d;margin:0}
.wx-story{display:grid;grid-template-columns:340px 1fr;gap:40px;align-items:center;padding:34px 0;border-bottom:1px solid #cdd5ca}
.wx-thumb{display:block;background:#e9ede4;overflow:hidden;border-radius:3px}.wx-thumb img{display:block;width:100%;height:260px;object-fit:contain;filter:none}
.wx-type-cover{height:260px;box-sizing:border-box;padding:28px;background:#e9efdf;border-left:4px solid #b8ca4b;display:flex;flex-direction:column;justify-content:space-between;color:#155d43}.wx-type-cover strong{font-size:32px;line-height:1.45;font-weight:500}.wx-type-cover span{font-size:13px;letter-spacing:2px}
.wx-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#60705f;line-height:1.8}.wx-meta time{letter-spacing:1px}
body.jx-site main.wx-page h2{font-size:25px;line-height:1.6;font-weight:500;color:#173e2c;margin:12px 0 16px}.wx-story h2 a:hover{color:#155d43;text-decoration:underline;text-underline-offset:6px}
.wx-story>div>p:not(.wx-meta){font-size:15px;line-height:1.9;color:#58675d;margin:0 0 20px}.wx-read{font-size:14px;color:#155d43;display:inline-block;padding:8px 0;border-bottom:1px solid #e77935}
.wx-more-news{padding-top:40px}.wx-more-news>[data-news-empty]{color:#5b6b5c;font-size:14px}.wx-contact{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:32px 0;margin-top:32px;border-top:1px solid #cdd5ca}.wx-contact h2{margin-right:auto!important}.wx-contact>a{padding:12px 18px;background:#155d43;color:white;border-radius:3px;font-size:14px}
.wx-article-heading{padding:24px 0 30px;border-bottom:1px solid #c9d2c8}.wx-article-heading h1{font-size:clamp(28px,3vw,40px)!important;line-height:1.55!important}.wx-intro{border-left:3px solid #e77935;padding-left:20px;font-size:17px;line-height:1.9;color:#526657;margin:26px 0 0}
.wx-article-body{padding:28px 0;font-size:17px;line-height:2;color:#33473a}.wx-article-body>p{margin:0 0 24px}.wx-article-body h2{margin:36px 0 18px!important}.wx-article-body ul{padding-left:24px;margin:16px 0 28px;list-style:disc}.wx-article-body li{margin-bottom:12px}.wx-article-body strong{font-weight:600}.wx-article-body figure{margin:30px 0 40px}.wx-article-body figure img{display:block;width:auto;max-width:100%;height:auto;max-height:1000px;margin:auto;border-radius:3px}.wx-article-body figcaption{font-size:12px;line-height:1.8;color:#657163;text-align:center;margin-top:12px}.wx-article-body table{width:100%;border-collapse:collapse;font-size:15px}.wx-article-body td,.wx-article-body th{padding:14px;text-align:left;border:1px solid #cad4c5}.wx-article-body th{background:#e9efdf;color:#214a33}.wx-note{font-size:14px;line-height:1.9;padding:20px;background:#edf0e5;border-left:3px solid #b8ca4b;margin:24px 0}.wx-article-body a{color:#155d43;text-decoration:underline;text-underline-offset:4px}
.wx-source{border-top:1px solid #cad4c5;padding:24px 0;color:#60705f;font-size:13px;line-height:1.9}.wx-source a{display:inline-block;color:#155d43;font-size:15px;margin-top:12px;text-decoration:underline;text-underline-offset:5px}.wx-end{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #cad4c5;padding-top:24px;color:#155d43;font-size:14px}.wx-page :focus-visible{outline:3px solid #e77935;outline-offset:4px}
@media(max-width:800px){.wx-wrap{width:calc(100% - 40px)}.wx-story{grid-template-columns:240px 1fr;gap:24px}.wx-thumb img,.wx-type-cover{height:220px}.wx-story h2{font-size:22px!important}}
@media(max-width:600px){.wx-wrap,.wx-article-wrap{width:calc(100% - 36px)}.wx-heading{padding:22px 0 30px}.wx-story{grid-template-columns:1fr;gap:16px;padding:28px 0}.wx-thumb img{height:280px}.wx-type-cover{height:230px}.wx-contact{gap:14px}.wx-contact h2{width:100%;font-size:23px!important}.wx-article-body{font-size:16px}.wx-article-body h2{font-size:23px!important}.wx-intro{font-size:15px}.wx-article-body td,.wx-article-body th{padding:10px}.wx-article-heading{padding-top:12px}}

/* ===== styles/news-archive.css ===== */
body.jx-site main.na-page{background:#f6f5ef;color:#34483d;padding:0 0 72px}
.na-wrap{width:min(1160px,calc(100% - 64px));margin:auto}
.na-crumb{display:flex;flex-wrap:wrap;gap:12px;padding:26px 0;color:#627066;font-size:13px}
.na-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;padding:34px 0 38px;border-bottom:1px solid #ccd5cc}
.na-eyebrow{margin:0 0 14px;font-size:13px;letter-spacing:2px;color:#155d43}
body.jx-site main.na-page h1{font-size:clamp(30px,3.3vw,44px);line-height:1.5;font-weight:600;letter-spacing:0;color:#093e2d;margin:0 0 16px}
.na-heading p:last-child{font-size:16px;line-height:1.9;color:#607065;max-width:710px;margin:0}
.na-year{font-size:48px;line-height:1.15;color:#155d43;font-weight:400;border-left:3px solid #e77935;padding-left:22px}
.na-year small{display:block;font-size:12px;color:#627066;letter-spacing:1px;margin-top:9px}
.na-nav{display:flex;flex-wrap:wrap;gap:8px 25px;padding:22px 0;border-bottom:1px solid #ccd5cc;font-size:14px}
.na-nav a{padding:8px 0;border-bottom:2px solid transparent;line-height:1.5;color:#52685a}
.na-nav a[aria-current="page"]{color:#155d43;border-color:#e77935;font-weight:600}
.na-nav a:hover{color:#093e2d;text-decoration:underline;text-underline-offset:6px}
.na-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:30px 0 12px}
.na-toolbar label{display:grid;gap:8px;font-size:13px;color:#536b5c;min-width:170px}
.na-toolbar label:first-child{flex:1;max-width:500px}
.na-toolbar input,.na-toolbar select{box-sizing:border-box;min-height:46px;border:1px solid #bdc9bf;background:#fff;color:#2a4535;border-radius:3px;font:inherit;padding:10px 14px;width:100%}
.na-count{margin:12px 0 8px;color:#68756b;font-size:13px;line-height:1.8}
.na-list{list-style:none;padding:0;margin:0}
.na-item{display:grid;grid-template-columns:100px minmax(0,1fr) 156px;gap:28px;align-items:center;padding:28px 0;border-bottom:1px solid #ccd5cc}
.na-item[hidden],.na-faq-item[hidden],.na-faq-group[hidden]{display:none}
.na-date{font-size:14px;color:#617366;line-height:1.8;align-self:start;padding-top:5px;font-variant-numeric:tabular-nums}
.na-tag{color:#155d43;font-size:12px;margin:0 0 7px}
body.jx-site main.na-page .na-item h2{font-size:22px;line-height:1.65;font-weight:500;color:#173e2c;margin:0 0 9px}
.na-item h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.na-summary{font-size:14px;line-height:1.9;color:#5b6d60;margin:0 0 10px}
.na-read{color:#155d43;font-size:13px;display:inline-block;border-bottom:1px solid #e77935;padding:4px 0}
.na-photo{display:block;background:#eaede5;overflow:hidden;max-height:130px}
.na-photo img{display:block;width:100%;height:130px;object-fit:contain;filter:none}
.na-source-label{display:flex;align-items:center;justify-content:center;min-height:105px;font-size:13px;color:#637764;background:#edf0e8;border-left:2px solid #b8ca4b;text-align:center;line-height:1.9}
.na-editor-note{font-size:13px;line-height:1.9;color:#617366;padding:20px 0;max-width:900px}
.na-section{padding:38px 0}
body.jx-site main.na-page .na-section>h2,body.jx-site main.na-page .na-section-heading{font-size:27px;line-height:1.6;font-weight:500;color:#173e2c;margin:0 0 20px}
.na-context{padding:22px 24px;border-left:3px solid #b8ca4b;background:#edf0e5;line-height:1.9;font-size:14px;color:#4c6353;margin:28px 0}
.na-actions{display:flex;gap:12px 22px;flex-wrap:wrap;margin:22px 0}
.na-actions a{display:inline-flex;padding:11px 0;color:#155d43;font-size:14px;border-bottom:1px solid #e77935}
.na-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-top:8px}
.na-services a{display:block;padding:22px 0;border-top:1px solid #bdc9bf;color:#155d43;line-height:1.7}
.na-services strong{display:block;font-size:19px;font-weight:500;margin-bottom:8px}
.na-services span{display:block;color:#637264;font-size:14px}
.na-page .news-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body.jx-site main.na-page .news-post-card{border:1px solid #ced6cb;border-radius:3px;background:white;box-shadow:none;transform:none;padding:24px;display:block;overflow:hidden}
.na-page .news-post-card-media img{display:block;width:100%;height:230px;object-fit:contain;filter:none;background:#edf0e8;margin-top:20px}
.na-page .news-post-card h3{font-size:20px;line-height:1.6;font-weight:500;color:#173e2c;margin:12px 0}
.na-page .news-post-summary{line-height:1.9;font-size:14px;color:#627066}
.na-empty{padding:20px 0;color:#657368;font-size:14px;line-height:1.9}
.na-empty[hidden]{display:none}
.na-bottom{border-top:1px solid #cbd4c8;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.na-bottom p{font-size:15px;line-height:1.8;margin:0;color:#526859}
.na-bottom a{font-size:14px;background:#155d43;color:white;padding:12px 22px;border-radius:3px}
.na-faq{display:grid;grid-template-columns:210px minmax(0,1fr);gap:48px;padding:30px 0}
.na-faq-nav{display:grid;gap:12px;align-content:start;font-size:14px}
.na-faq-nav a{padding:10px 0;color:#155d43;border-bottom:1px solid #ccd5cc}
.na-faq-group{margin-bottom:34px;scroll-margin-top:145px}
.na-faq-group>h2{font-size:25px!important;font-weight:500!important;margin:0 0 16px!important;color:#173e2c!important}
.na-faq-item{border-top:1px solid #ccd5cc;padding:18px 0}
.na-faq-item summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:17px;line-height:1.7;color:#214833}
.na-faq-item summary::-webkit-details-marker{display:none}
.na-faq-item summary::after{content:'＋';font-size:21px;flex-shrink:0;color:#155d43}
.na-faq-item[open] summary::after{content:'−'}
.na-faq-item p{font-size:15px;line-height:1.95;color:#5b6d60;margin:14px 0 0}
.na-page :focus-visible{outline:3px solid #e77935;outline-offset:4px}
@media(max-width:800px){.na-wrap{width:calc(100% - 40px)}.na-item{grid-template-columns:85px minmax(0,1fr) 120px;gap:18px}.na-photo img{height:120px}.na-faq{grid-template-columns:1fr;gap:24px}.na-faq-nav{display:flex;gap:22px;flex-wrap:wrap}.na-services{grid-template-columns:1fr;gap:8px}}
@media(max-width:550px){.na-wrap{width:calc(100% - 36px)}.na-heading{grid-template-columns:1fr;padding:18px 0 28px;gap:18px}.na-year{font-size:30px;display:flex;align-items:center;gap:14px;padding-left:14px}.na-year small{margin:0}.na-nav{gap:5px 18px}.na-toolbar{padding-top:24px}.na-toolbar label{flex:1;min-width:130px}.na-toolbar label:first-child{flex-basis:100%}.na-item{grid-template-columns:minmax(0,1fr) 92px;gap:9px 14px;padding:24px 0}.na-date{grid-column:1/-1;padding:0;font-size:12px}.na-item h2{font-size:19px!important}.na-summary{font-size:13px}.na-photo img{height:112px}.na-source-label{font-size:12px;min-height:100px}.na-page .news-post-grid{grid-template-columns:1fr}.na-faq-item summary{font-size:16px}.na-bottom{gap:18px}.na-section{padding:28px 0}}

/* ===== styles/site-completion.css ===== */
/* Shared navigation, dialog and readable mobile contact entry. */
.skip-link{position:fixed;top:8px;left:12px;z-index:999;background:#fff;color:#093e2d;padding:10px 18px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
body.jx-site .nav-inner{gap:20px}
body.jx-site .site-nav{gap:4px}
body.jx-site .nav-item{display:flex;align-items:center}
body.jx-site .nav-item>a{padding:20px 7px;font-size:15px;white-space:nowrap}
.nav-disclosure{border:0;background:transparent;color:#155d43;width:24px;min-height:44px;padding:0;cursor:pointer}
.nav-disclosure span{display:inline-block;font-size:16px;transition:transform .15s}
.expanded>.nav-disclosure span{transform:rotate(180deg)}
body.jx-site .mega-menu{border:0}
body.jx-site .mega-menu-inner{border-radius:6px;box-shadow:0 16px 35px #093e2d12}
body.jx-site .mega-menu-links a{border:0;border-bottom:1px solid #e2e7df;border-radius:0;min-height:46px}
.site-search-link{display:grid;place-items:center;border:1px solid #dce4dc;padding:8px;border-radius:4px;color:#155d43}
.site-search-link svg{width:19px;height:19px}
body.jx-site dialog.lead-modal{width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px;border:0;background:transparent;color:#263b31}
body.jx-site dialog.lead-modal:not([open]){display:none}
body.jx-site dialog.lead-modal[open]{display:grid}
dialog.lead-modal::backdrop{background:#16291fcc}
body.jx-site .lead-modal-card{box-shadow:none;padding:32px;gap:16px;border-radius:8px}
body.jx-site .lead-modal-card h2{font-size:26px;line-height:1.4;padding-right:20px}
body.jx-site .lead-modal-close{font-size:28px;line-height:1;background:#f6f5ef;border:0;color:#155d43;border-radius:4px}
body.jx-site .lead-modal-card input,body.jx-site .lead-modal-card select{border-radius:4px}
body.jx-site .lead-modal-card .lead-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7;color:#526158}
body.jx-site .lead-consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:#155d43}
body.jx-site .lead-consent span{font-weight:400;color:#526158}
.lead-form-tip{min-height:40px;font-size:14px;line-height:1.7;margin:0;color:#526158}
.lead-form-tip[data-state="error"]{color:#994127}
.lead-form-tip[data-state="success"]{color:#155d43}
body.jx-site .footer-grid>div{border:0;background:transparent;padding:0}
body.jx-site .footer-grid{gap:42px;padding-block:28px;border-block:1px solid #ffffff22}
body.jx-site .footer-grid a{line-height:1.8}
body.jx-site .copyright{color:#c1d3c8}
body.jx-site .contact-widget span{font-size:13px}
body.jx-site main{scroll-margin-top:130px}
@media(max-width:1180px) and (min-width:981px){body.jx-site .brand-copy small{display:none}body.jx-site .brand-copy strong{font-size:20px}body.jx-site .nav-inner{gap:10px}body.jx-site .nav-item>a{font-size:14px;padding-inline:4px}}
@media(max-width:980px){
 body.jx-site .site-nav{align-items:stretch;justify-content:flex-start;left:0;right:0;width:100%;max-width:none;max-height:calc(100dvh - 160px);overflow:auto;padding:12px 18px;border-radius:8px;overscroll-behavior:contain}
 body.jx-site .nav-item{display:grid;grid-template-columns:1fr 48px;flex-shrink:0;border-bottom:1px solid #e2e7df}
 body.jx-site .nav-item>a{padding:13px 5px}
 body.jx-site .nav-disclosure{width:48px;min-height:48px}
 body.jx-site .nav-item .mega-menu{grid-column:1/-1;display:none;position:static;width:100%;padding:0;transform:none;opacity:1;visibility:visible}
 body.jx-site .nav-item.expanded .mega-menu{display:block;transform:none}
 body.jx-site .mega-menu-inner{padding:8px 0 18px;border:0;box-shadow:none}
 body.jx-site .mega-menu-heading{display:none}
 body.jx-site .mega-menu-links{gap:0 16px}
 body.jx-site .mega-menu-links a{font-size:14px;padding:10px 8px;white-space:normal;line-height:1.6}
 body.jx-site .site-search-link{margin-left:auto;order:1}
 body.jx-site .menu-toggle{order:2}
}
@media(max-width:720px){
 body.jx-site .childcare-anchor .container{flex-wrap:wrap;gap:4px;overflow:visible}
 body.jx-site .childcare-anchor a{flex:1 0 calc(50% - 4px);text-align:center;padding:8px 10px;min-height:40px}
 body.jx-site .childcare-hero{background-image:linear-gradient(180deg,rgba(250,255,250,.94),rgba(250,255,250,.62)),url('/assets/course-childcare-practice.jpg')}
 body.jx-site .contact-widget{position:fixed;inset:auto 16px 16px auto;display:block;width:auto;height:auto;border-radius:30px;box-shadow:0 4px 16px #093e2d25}
 body.jx-site .contact-widget>*{display:none}
 body.jx-site .contact-widget>[data-open-booking]{display:flex;width:auto;min-height:44px;gap:8px;padding:10px 16px;border-radius:30px;background:#155d43}
 body.jx-site .contact-widget>[data-open-booking] span{position:static;display:inline;width:auto;height:auto;clip:auto;overflow:visible;opacity:1;transform:none;white-space:nowrap;font-size:14px;color:#fff;visibility:visible;background:none;padding:0}
 body.jx-site .site-footer{padding-bottom:75px}
 body.jx-site dialog.lead-modal{padding:16px}
 body.jx-site .lead-modal-card{padding:26px 20px;max-height:calc(100dvh - 32px);gap:13px}
 body.jx-site .footer-grid{gap:26px}
}
body.jx-site .childcare-btn.primary{background:#155d43;box-shadow:none}
body.jx-site .practice-band{background:#093e2d}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(min-width:981px){body.jx-site .has-mega:focus-within:not(.expanded):not(:hover) .mega-menu{display:none}body.jx-site .has-mega.expanded .mega-menu{display:block}}
.jx-photo-open{overflow:hidden}
.jx-photo-dialog{width:min(1260px,96vw);max-width:96vw;max-height:95dvh;padding:54px 20px 20px;border:0;border-radius:6px;background:#f6f5ef;color:#263b31;box-shadow:0 24px 80px #0003}
.jx-photo-dialog::backdrop{background:#10251bd9}
.jx-photo-dialog figure{margin:0;text-align:center}
.jx-photo-dialog img{display:block;width:100%;height:calc(82dvh - 110px);object-fit:contain}
.jx-photo-dialog figcaption{font-size:14px;margin-top:14px;line-height:1.7}
.jx-photo-close{position:absolute;right:12px;top:8px;width:42px;height:42px;border:0;background:transparent;font-size:30px;color:#155d43;cursor:pointer}
.jx-photo-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:16px;flex-wrap:wrap}
.jx-photo-controls :is(a,button){padding:8px 12px;background:#fff;border:1px solid #cdd8cf;border-radius:4px;font:inherit;font-size:14px;color:#155d43;cursor:pointer}
.jx-photo-controls button:disabled{opacity:.35;cursor:default}
body.jx-site .honor-page-new{background:#f6f5ef;color:#263b31}
body.jx-site .honor-new-hero,body.jx-site .honor-new-hero-inner{min-height:480px}
body.jx-site .honor-new-hero{background:#f6f5ef;color:#263b31}
body.jx-site .honor-new-hero>img{left:55%;width:45%;object-fit:contain;opacity:1;filter:none}
body.jx-site .honor-new-shade,body.jx-site .honor-new-hero aside{display:none}
body.jx-site .honor-new-hero h1{color:#093e2d;font-size:54px;line-height:1.3}
body.jx-site .honor-new-hero-inner>p{max-width:45%;color:#526158}
body.jx-site .honor-new-hero-inner>div a{border-color:#c5d5c8;color:#155d43;background:#fff}
body.jx-site .honor-people{background:#f6f5ef;color:#263b31}
body.jx-site .honor-new-heading h2{color:#093e2d}
body.jx-site .honor-new-heading>p{color:#526158}
body.jx-site .honor-tabs button{color:#526158;font-size:17px}
body.jx-site .honor-tabs button.is-active{color:#155d43}
body.jx-site .honor-tabs{border-color:#d7e0d6}
body.jx-site .honor-archive{gap:20px}
body.jx-site .honor-archive-item{background:#fff;border:1px solid #d7e0d6;aspect-ratio:3/4;min-height:0}
body.jx-site .honor-archive-item img{height:100%;min-height:0;object-fit:contain;filter:none}
body.jx-site .honor-expand{border:1px solid #155d43;color:#155d43;background:#fff;border-radius:4px}
body.jx-site .mt-gallery-grid button{display:block;border:0;padding:0;width:100%;height:100%;background:none;cursor:zoom-in}
@media(max-width:720px){.jx-photo-dialog{padding:54px 12px 20px}.jx-photo-controls{gap:10px}body.jx-site .honor-new-hero>img{position:static;width:calc(100% - 36px);margin:0 18px 24px;height:auto}body.jx-site .honor-new-hero-inner{min-height:0;padding:40px 0}body.jx-site .honor-new-hero{display:flex;flex-direction:column-reverse;min-height:0}body.jx-site .honor-new-hero h1{font-size:36px}body.jx-site .honor-new-hero-inner>p{max-width:100%}body.jx-site .honor-archive{gap:12px}body.jx-site .honor-people{padding:48px 0}}

/* ===== styles/branch-network.css ===== */
/* Branch directory: geographic context beside a readable, searchable address list. */
body.jx-site[data-page="partner_institutions"] {
  overflow-x: clip;
  overflow-y: visible;
}
body.jx-site[data-page="partner_institutions"].bn-map-open { overflow-y: hidden; }

.bn-page {
  --bn-paper: #f6f5ef;
  --bn-white: #fff;
  --bn-green: #155d43;
  --bn-orange: #e77935;
  --bn-ink: #303e34;
  --bn-muted: #626e63;
  --bn-line: #d9dfd4;
  background: var(--bn-paper);
  color: var(--bn-ink);
  padding-bottom: 56px;
}

.bn-page *, .bn-page *::before, .bn-page *::after { box-sizing: border-box; }
.bn-wrap { width: min(1200px, calc(100% - 80px)); margin-inline: auto; }
.bn-page :is(section, aside, article, div, dl) { min-width: 0; }
.bn-page [hidden] { display: none !important; }
.bn-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.bn-page :is(p, h1, h2, h3, a, button, dt, dd, label) { overflow-wrap: anywhere; }
.bn-page :is(a, button, input, select, [tabindex]):focus-visible { outline: 3px solid #a85b2e; outline-offset: 4px; }
.bn-directory:focus-visible, .bn-page:focus-visible { outline: none; }
.bn-page :is(button, input, select) { font: inherit; }
.bn-page button { cursor: pointer; }
.bn-page button:disabled { opacity: .45; cursor: default; }
.bn-page a { color: var(--bn-green); text-underline-offset: 5px; }
.bn-page a:hover { text-decoration: underline; }
.bn-page svg:not(.bn-map) { width: 18px; height: 18px; flex: 0 0 18px; }

.bn-crumb { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 24px 0 12px; font-size: 13px; line-height: 1.8; color: var(--bn-muted); }
.bn-crumb a { color: inherit; }
.bn-crumb [aria-current="page"] { color: var(--bn-green); }
.bn-hero { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(310px, 1fr); align-items: end; gap: 48px; padding: 30px 0 40px; border-bottom: 1px solid var(--bn-line); margin-bottom: 36px; }
.bn-kicker { display: block; margin: 0 0 12px; font-size: 12px; font-weight: 600; color: var(--bn-green); letter-spacing: .1em; }
body.jx-site .bn-page h1 { margin: 0 0 18px; color: var(--bn-green); font-size: clamp(32px, 3.2vw, 44px); font-weight: 600; line-height: 1.4; letter-spacing: -.03em; text-wrap: balance; }
.bn-intro { max-width: 640px; margin: 0; color: var(--bn-muted); font-size: 16px; line-height: 1.95; }
.bn-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0 0 4px; }
.bn-stats > div { display: flex; flex-direction: column; align-items: flex-start; padding-top: 14px; border-top: 2px solid var(--bn-orange); }
.bn-stats dt { order: 2; margin-top: 6px; color: var(--bn-muted); font-size: 13px; line-height: 1.7; }
.bn-stats dd { order: 1; margin: 0; color: var(--bn-green); font-size: 38px; font-weight: 500; line-height: 1.2; font-variant-numeric: tabular-nums; }
.bn-stats dd span { margin-left: 5px; font-size: 14px; font-weight: 400; }
.bn-heading h1 > span { color: var(--bn-orange); }
.bn-jump-directory { display: none; }

.bn-layout { display: grid; grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr); align-items: start; gap: 36px; }
.bn-map-panel { position: sticky; top: 158px; background: var(--bn-white); border: 1px solid var(--bn-line); border-radius: 6px; overflow: hidden; }
.bn-map-top { padding: 24px 26px 0; }
body.jx-site .bn-page .bn-map-top h2 { margin: 0 0 9px; color: var(--bn-green); font-size: 24px; font-weight: 600; line-height: 1.5; letter-spacing: -.02em; }
.bn-map-top .bn-kicker { font-size: 11px; margin-bottom: 7px; }
.bn-map-top p:not(.bn-kicker) { margin: 0; color: var(--bn-muted); font-size: 13px; line-height: 1.85; }
.bn-map-top-actions { display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.bn-map-top-actions button { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; border: 0; padding: 5px 0; background: transparent; color: var(--bn-green); font-size: 12px; }
.bn-map-top-actions button:hover { text-decoration: underline; }
.bn-map-stage { position: relative; width: 100%; min-height: 250px; margin: 5px 0; background: #fff; }
.bn-map { display: block; width: 100%; height: auto; aspect-ratio: 640 / 520; overflow: visible; }
.bn-map-area { fill: #eef1e9; stroke: #b6c4b2; stroke-width: 1; vector-effect: non-scaling-stroke; transition: fill .15s ease; }
.bn-map-area[data-active="true"] { fill: #dce8d8; stroke: #93ac91; }
.bn-map-city-label { fill: #626e59; font-size: 13px; font-weight: 400; text-anchor: middle; pointer-events: none; paint-order: stroke; stroke: #fff; stroke-width: 3px; stroke-linejoin: round; }
.bn-map-leader { fill: none; stroke: #96a990; stroke-width: 1.2; stroke-linecap: round; vector-effect: non-scaling-stroke; pointer-events: none; }
.bn-map-anchor { fill: var(--bn-orange); stroke: #fff; stroke-width: 2; vector-effect: non-scaling-stroke; pointer-events: none; }
.bn-map-marker { cursor: pointer; }
.bn-map-marker .bn-marker-label { fill: #fff; stroke: #6f9278; stroke-width: 1.2; rx: 4; vector-effect: non-scaling-stroke; transition: fill .15s ease, stroke .15s ease; }
.bn-map-marker text { fill: var(--bn-green); font-size: 15px; font-weight: 600; pointer-events: none; }
.bn-map-marker[data-muted="true"] .bn-marker-label { fill: #f7f8f3; stroke: #bdc7b8; }
.bn-map-marker[data-muted="true"] .bn-map-leader { stroke: #c3cabc; }
.bn-map-area[data-selected="true"] { fill: #ccdec8; stroke: #6f9174; }
.bn-map-compass { fill: #6a7966; font-size: 12px; }
.bn-map-marker .bn-marker-count { fill: #f8cfaf; stroke: none; rx: 3; }
.bn-map-marker .bn-marker-count + text { fill: #473527; font-size: 13px; }
.bn-map-marker:hover .bn-marker-label { fill: #eff5ea; stroke: var(--bn-green); }
.bn-map-marker[data-selected="true"] .bn-marker-label { fill: var(--bn-green); stroke: var(--bn-green); }
.bn-map-marker[data-selected="true"] text { fill: #fff; }
.bn-map-marker[data-selected="true"] .bn-marker-count + text { fill: #473527; }
.bn-map-marker:focus-visible { outline: none; }
.bn-map-marker:focus-visible .bn-marker-label { stroke: var(--bn-orange); stroke-width: 3; }
.bn-map-marker[data-selected="true"]:focus-visible .bn-marker-label { stroke: var(--bn-orange); }
.bn-map-foot { padding: 16px 26px 20px; border-top: 1px solid #e8ece4; color: var(--bn-muted); font-size: 12px; line-height: 1.85; }
.bn-map-foot p { margin: 6px 0 0; }
.bn-map-foot > div, .bn-map-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; }
.bn-map-foot :is(span, a) { display: inline-flex; align-items: center; gap: 6px; }
.bn-map-foot :is(i, b)[aria-hidden="true"] { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--bn-orange); }
.bn-map-foot a { font-size: 12px; text-decoration: underline; }
.bn-map-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 26px; background: #f3f5ee; border-top: 1px solid var(--bn-line); }
body.jx-site .bn-page .bn-map-summary h3 { margin: 0 0 7px; color: var(--bn-green); font-size: 17px; line-height: 1.5; font-weight: 600; }
.bn-map-summary p { margin: 0; font-size: 13px; line-height: 1.85; color: var(--bn-muted); }
.bn-map-summary :is(a, button) { display: inline-flex; align-items: center; min-height: 44px; margin-top: 3px; padding: 5px 0; background: none; border: 0; border-bottom: 1px solid #c5d3bf; color: var(--bn-green); font-size: 13px; }

.bn-directory { scroll-margin-top: 150px; }
.bn-directory-head { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 20px; }
.bn-directory-head > a { display: inline-flex; gap: 7px; align-items: center; min-height: 44px; font-size: 13px; flex-shrink: 0; }
body.jx-site .bn-page .bn-directory-head h2 { margin: 0 0 7px; color: var(--bn-green); font-size: 26px; font-weight: 600; line-height: 1.5; }
.bn-directory-head p { margin: 0; color: var(--bn-muted); font-size: 14px; line-height: 1.85; }
.bn-city-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.bn-city-tabs button { min-height: 44px; padding: 9px 17px; border: 1px solid #cfd8c9; border-radius: 4px; color: var(--bn-green); background: transparent; font-size: 14px; line-height: 1.5; font-weight: 500; }
.bn-city-tabs button:hover { background: #eef2e8; border-color: #9eaf96; }
.bn-city-tabs button:is([aria-pressed="true"], [aria-selected="true"], [data-selected="true"], .is-active) { background: var(--bn-green); border-color: var(--bn-green); color: #fff; }
.bn-city-tabs button > span { margin-left: 8px; font-size: 11px; opacity: .8; font-variant-numeric: tabular-nums; }
.bn-filter-row { display: grid; grid-template-columns: minmax(0, 1fr) 142px; gap: 10px; }
.bn-search { display: block; margin: 0 0 10px; }
.bn-search > div { display: flex; align-items: center; gap: 0; min-height: 48px; padding-left: 13px; border: 1px solid #bfcdb9; border-radius: 4px; background: #fff; color: var(--bn-green); }
.bn-search > div:focus-within { outline: 2px solid var(--bn-green); outline-offset: 3px; border-color: transparent; }
.bn-search input:focus-visible { outline: none; }
.bn-search input { flex: 1 1 auto; width: 0; min-width: 0; min-height: 48px; padding: 11px 14px; border: 0; border-radius: 4px; color: var(--bn-ink); background: transparent; font-size: 15px; line-height: 1.6; }
.bn-search input::placeholder { color: #778173; }
.bn-search input::-webkit-search-cancel-button { appearance: none; }
.bn-search button { display: inline-flex; justify-content: center; align-items: center; gap: 5px; min-width: 44px; min-height: 44px; padding: 8px 12px; border: 0; border-radius: 3px; color: var(--bn-green); background: transparent; font-size: 13px; line-height: 1.5; }
.bn-search button:hover { background: #eef2e8; }
.bn-district-filter { margin-bottom: 10px; }
.bn-district-filter select { display: block; width: 100%; min-height: 50px; margin: 0; padding: 9px 28px 9px 13px; color: var(--bn-ink); background: #fff; border: 1px solid #bfcdb9; border-radius: 4px; font-size: 14px; line-height: 1.6; }
.bn-result-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; margin: 4px 0 12px; min-height: 44px; font-size: 13px; }
.bn-result-bar p { margin: 0; color: var(--bn-muted); line-height: 1.8; }
.bn-result-bar p strong { color: var(--bn-green); font-weight: 600; }
.bn-result-bar button { padding: 8px 0; min-height: 44px; border: 0; background: transparent; color: var(--bn-green); font-size: 13px; text-decoration: underline; text-underline-offset: 5px; }
.bn-result-bar button { display: inline-flex; align-items: center; gap: 7px; }
.bn-list { border: 1px solid var(--bn-line); border-radius: 6px; background: #fff; overflow: hidden; }
.bn-location { padding: 23px 25px 21px; border-bottom: 1px solid var(--bn-line); scroll-margin-top: 130px; background: #fff; }
.bn-location:last-child { border-bottom: 0; }
.bn-location-top { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 13px; font-size: 12px; line-height: 1.8; }
.bn-number { color: #a85b2e; font-size: 13px; font-weight: 600; font-variant-numeric: tabular-nums; }
.bn-location-region { color: var(--bn-muted); }
.bn-direct { display: inline-flex; align-items: center; padding: 2px 7px; border-left: 2px solid var(--bn-orange); background: #faf0e7; color: #775133; font-size: 11px; line-height: 1.6; }
body.jx-site .bn-page .bn-location h3 { margin: 0 0 14px; color: var(--bn-ink); font-size: 20px; font-weight: 600; line-height: 1.65; letter-spacing: -.01em; }
.bn-address { display: flex; align-items: flex-start; gap: 9px; margin: 0; color: var(--bn-muted); font-size: 14px; line-height: 1.9; }
.bn-address :is(svg, i) { margin-top: 5px; color: #7d9473; }
.bn-address span { min-width: 0; }
.bn-location-note { margin: 10px 0 0; color: #776b5b; font-size: 12px; line-height: 1.85; }
.bn-location-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px 20px; margin-top: 12px; }
.bn-location-actions :is(a, button) { display: inline-flex; align-items: center; justify-content: flex-start; gap: 7px; min-height: 44px; padding: 8px 0; font-size: 13px; font-weight: 500; line-height: 1.6; }
.bn-map-link { color: var(--bn-green); }
.bn-copy { border: 0; background: none; color: var(--bn-muted); }
.bn-copy:hover { color: var(--bn-green); text-decoration: underline; text-underline-offset: 5px; }
.bn-copy[data-copied="true"] { color: var(--bn-green); }
.bn-location-actions svg { width: 16px; height: 16px; flex-basis: 16px; }
.bn-empty { margin: 20px 0 0; padding: 30px 24px; border-block: 1px solid var(--bn-line); color: var(--bn-muted); text-align: center; font-size: 14px; line-height: 1.9; }
body.jx-site .bn-page .bn-empty h3 { font-size: 20px; margin: 0 0 10px; color: var(--bn-green); }
.bn-empty p { margin: 0 0 14px; }
.bn-empty button { padding: 10px 18px; min-height: 44px; border: 1px solid #bdcbb7; background: white; color: var(--bn-green); border-radius: 4px; }
.bn-roster-note { font-size: 12px; color: var(--bn-muted); line-height: 1.9; margin: 20px 0 0; }
.bn-text-link { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; font-size: 13px; margin-top: 8px; }

.bn-partners { margin-top: 64px; padding-top: 36px; border-top: 1px solid var(--bn-line); }
.bn-section-head { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); gap: 36px; align-items: start; margin-bottom: 24px; }
body.jx-site .bn-page .bn-section-head h2 { margin: 0; color: var(--bn-green); font-size: 28px; font-weight: 600; line-height: 1.5; }
.bn-section-head p { margin: 0; font-size: 14px; line-height: 1.9; color: var(--bn-muted); }
.bn-partner-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 36px; }
.bn-partner-list article { padding: 20px 0; border-top: 1px solid var(--bn-line); }
body.jx-site .bn-page .bn-partner-list h3 { margin: 0 0 8px; color: var(--bn-ink); font-size: 17px; font-weight: 500; line-height: 1.7; }
.bn-partner-list p { margin: 0; color: var(--bn-muted); font-size: 13px; line-height: 1.9; }
.bn-visit { display: flex; align-items: center; justify-content: space-between; gap: 24px 40px; margin-top: 44px; padding: 30px 0; border-top: 2px solid var(--bn-orange); border-bottom: 1px solid var(--bn-line); }
body.jx-site .bn-page .bn-visit h2 { margin: 0 0 7px; color: var(--bn-green); font-size: 25px; font-weight: 600; line-height: 1.5; }
.bn-visit p { margin: 0; color: var(--bn-muted); font-size: 14px; line-height: 1.9; }
.bn-visit-actions { display: flex; flex-shrink: 0; align-items: center; flex-wrap: wrap; gap: 12px; }
.bn-visit-actions a { display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: 46px; padding: 10px 18px; border: 1px solid var(--bn-green); border-radius: 4px; background: #fff; color: var(--bn-green); font-size: 14px; line-height: 1.6; }
.bn-visit-actions a:first-child { background: var(--bn-green); color: #fff; }
.bn-visit-actions a:hover { text-decoration: none; background: #edf3e7; }
.bn-visit-actions a:first-child:hover { background: #0e4b34; }
.bn-related { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 26px; padding-top: 22px; font-size: 13px; color: var(--bn-muted); }
.bn-related strong { font-size: 13px; font-weight: 500; }
.bn-related a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding-block: 8px; }
.bn-map-dialog { width: min(960px, calc(100vw - 40px)); max-width: none; max-height: calc(100dvh - 40px); padding: 0; margin: auto; color: var(--bn-ink); border: 1px solid #cad5c4; border-radius: 7px; background: white; }
.bn-map-dialog:not([open]) { display: none; }
.bn-map-dialog::backdrop { background: #153323bd; }
.bn-map-dialog-card { padding: 22px 24px; }
.bn-map-dialog-head { display: flex; justify-content: space-between; align-items: start; gap: 16px; padding-bottom: 14px; border-bottom: 1px solid var(--bn-line); }
body.jx-site .bn-page .bn-map-dialog h2 { margin: 0 0 8px; font-size: 22px; color: var(--bn-green); line-height: 1.5; }
.bn-map-dialog-head p { margin: 0; font-size: 13px; color: var(--bn-muted); line-height: 1.8; }
.bn-map-dialog-head button { width: 44px; min-height: 44px; padding: 12px; border: 1px solid var(--bn-line); border-radius: 4px; background: #f6f5ef; color: var(--bn-green); flex-shrink: 0; }
.bn-map-dialog-canvas { overflow: auto; max-height: calc(100dvh - 204px); overscroll-behavior: contain; scrollbar-width: thin; }
.bn-map-dialog-canvas .bn-map { width: 100%; min-width: 780px; height: auto; aspect-ratio: 640/520; }
@media(min-width:981px) { .bn-map-stage .bn-map { height: clamp(180px, calc(100dvh - 540px), 420px); aspect-ratio: auto; } }
@media(min-width:981px) and (max-height:740px) { .bn-map-panel { position: static; } .bn-map-stage .bn-map { height: 420px; } }

@media (max-width: 1180px) and (min-width: 981px) {
  .bn-hero { grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr); gap: 32px; }
  .bn-layout { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 24px; }
  .bn-map-panel { top: 148px; }
  .bn-map-top, .bn-map-foot, .bn-map-summary { padding-inline: 20px; }
  .bn-location { padding-inline: 21px; }
  .bn-stats { gap: 18px; }
  .bn-visit { flex-wrap: wrap; }
}

@media (max-width: 980px) {
  .bn-wrap { width: min(760px, calc(100% - 40px)); }
  .bn-hero { grid-template-columns: minmax(0, 1fr); align-items: start; gap: 26px; padding: 24px 0 30px; margin-bottom: 28px; }
  .bn-jump-directory { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; justify-self: start; font-size: 13px; margin-top: -12px; border-bottom: 1px solid #bfcdb9; }
  .bn-stats { max-width: 440px; width: 100%; gap: 26px; }
  .bn-stats dd { font-size: 32px; }
  .bn-layout { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .bn-map-panel { position: static; }
  .bn-map-stage { max-width: 620px; margin-inline: auto; }
  .bn-map-top { padding: 24px 26px 0; }
  .bn-map-foot { padding-inline: 26px; }
  .bn-map-summary { padding-inline: 26px; }
  .bn-section-head { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .bn-visit { flex-wrap: wrap; gap: 22px; }
  .bn-visit-actions { flex-shrink: 1; }
}

@media (max-width: 600px) {
  body.jx-site[data-page="partner_institutions"] .contact-widget { display: none !important; }
  .bn-page { padding-bottom: 36px; }
  .bn-wrap { width: calc(100% - 36px); }
  .bn-crumb { padding: 19px 0 8px; font-size: 12px; gap: 6px 9px; }
  .bn-hero { padding-top: 18px; gap: 22px; margin-bottom: 24px; }
  body.jx-site .bn-page h1 { font-size: 30px; margin-bottom: 14px; line-height: 1.5; }
  .bn-kicker { font-size: 11px; letter-spacing: .06em; }
  .bn-intro { font-size: 14px; line-height: 1.9; }
  .bn-stats { gap: 16px; }
  .bn-stats > div { padding-top: 12px; }
  .bn-stats dd { font-size: 30px; }
  .bn-stats dt { font-size: 12px; }
  .bn-layout { gap: 30px; }
  .bn-map-top { padding: 20px 18px 0; }
  body.jx-site .bn-page .bn-map-top h2 { font-size: 22px; }
  .bn-map-stage { min-height: 0; margin-block: 12px 5px; }
  .bn-map { min-height: 0; }
  .bn-map-foot { padding: 14px 18px 18px; font-size: 11px; }
  .bn-map-foot a { font-size: 11px; }
  .bn-map-summary { padding: 17px 18px; }
  body.jx-site .bn-page .bn-directory-head h2 { font-size: 24px; }
  .bn-directory-head p { font-size: 13px; }
  .bn-city-tabs { gap: 7px; }
  .bn-city-tabs button { padding-inline: 12px; font-size: 13px; }
  .bn-search input { font-size: 14px; padding-inline: 11px; }
  .bn-filter-row { grid-template-columns: 1fr; gap: 0; }
  .bn-directory { scroll-margin-top: 142px; }
  .bn-map-summary { align-items: start; gap: 12px; }
  .bn-map-summary > a { font-size: 12px; flex-shrink: 0; }
  .bn-map-summary > a svg { display: none; }
  .bn-location { padding: 20px 18px 17px; scroll-margin-top: 98px; }
  body.jx-site .bn-page .bn-location h3 { font-size: 18px; margin-bottom: 11px; }
  .bn-address { font-size: 13px; gap: 7px; }
  .bn-location-top { gap: 6px 10px; margin-bottom: 11px; }
  .bn-location-actions { gap: 5px 20px; margin-top: 9px; }
  .bn-partners { margin-top: 44px; padding-top: 28px; }
  body.jx-site .bn-page .bn-section-head h2 { font-size: 24px; }
  .bn-section-head p { font-size: 13px; }
  .bn-partner-list { grid-template-columns: minmax(0, 1fr); }
  .bn-partner-list article { padding: 17px 0; }
  .bn-visit { margin-top: 32px; padding: 24px 0; }
  body.jx-site .bn-page .bn-visit h2 { font-size: 23px; }
  .bn-visit-actions { width: 100%; gap: 10px; }
  .bn-visit-actions a { flex: 1 1 140px; padding-inline: 12px; font-size: 13px; }
  .bn-related { gap: 2px 20px; padding-top: 18px; }
  .bn-related strong { width: 100%; }
  .bn-map-dialog { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); }
  .bn-map-dialog-card { padding: 18px 15px; }
  body.jx-site .bn-page .bn-map-dialog h2 { font-size: 18px; }
  .bn-map-dialog-head p { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .bn-page *, .bn-page *::before, .bn-page *::after { transition: none !important; }
}

/* ===== styles/completion-about.css ===== */
body.jx-site .ca-page { background:#f6f5ef; color:#173328; }
body.jx-site .ca-page *,body.jx-site .ca-page *::before,body.jx-site .ca-page *::after { box-sizing:border-box; }
body.jx-site .ca-wrap { width:min(1160px,calc(100% - 80px)); margin-inline:auto; }
body.jx-site .ca-page :is(h1,h2,h3,p,figure) { margin:0; }
body.jx-site .ca-page h1 { font-size:clamp(34px,4vw,54px); line-height:1.35; color:#093e2d; font-weight:700; letter-spacing:-.02em; }
body.jx-site .ca-page h2 { font-size:clamp(27px,2.6vw,37px); line-height:1.4; font-weight:700; color:#093e2d; }
body.jx-site .ca-page h3 { font-size:20px; line-height:1.5; font-weight:700; }
body.jx-site .ca-page p { color:#606d64; font-size:16px; line-height:1.95; }
body.jx-site .ca-page img { display:block; width:100%; filter:none; opacity:1; }
body.jx-site .ca-label { display:block; color:#155d43; font-size:13px; letter-spacing:.08em; font-weight:700; margin-bottom:18px; }
body.jx-site .ca-label::before { content:""; display:inline-block; width:28px; height:3px; margin-right:12px; background:#e77935; vertical-align:middle; }
body.jx-site .ca-crumb { display:flex; gap:10px; flex-wrap:wrap; padding-top:28px; color:#6a776e; font-size:13px; }
body.jx-site .ca-crumb a { text-decoration:none; }
body.jx-site .ca-hero { padding:50px 0 64px; }
body.jx-site .ca-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:60px; }
body.jx-site .ca-hero-copy > p { margin-top:24px; max-width:560px; }
body.jx-site .ca-hero-photo img { height:auto; aspect-ratio:1.2; object-fit:cover; }
body.jx-site .ca-culture .ca-hero-photo img { aspect-ratio:1.5; object-fit:contain; }
body.jx-site .ca-hero-photo figcaption { margin-top:12px; font-size:12px; color:#6a776e; line-height:1.8; }
body.jx-site .ca-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
body.jx-site .ca-button { display:inline-flex; align-items:center; justify-content:center; gap:15px; min-height:48px; padding:12px 21px; color:#fff; background:#155d43; border:1px solid #155d43; border-radius:4px; font-size:15px; font-weight:700; text-decoration:none; cursor:pointer; }
body.jx-site .ca-button:hover { background:#093e2d; border-color:#093e2d; }
body.jx-site .ca-button-outline { background:transparent; color:#155d43; border-color:#b5c5b8; }
body.jx-site .ca-button-outline:hover { background:#edf1e9; color:#093e2d; border-color:#155d43; }
body.jx-site .ca-jump { border-block:1px solid #dce2d8; background:#fff; }
body.jx-site .ca-jump .ca-wrap { display:flex; gap:32px; flex-wrap:wrap; padding-block:20px; }
body.jx-site .ca-jump a { color:#596a5f; font-size:14px; text-decoration:none; }
body.jx-site .ca-jump a:hover { color:#155d43; text-decoration:underline; }
body.jx-site .ca-section { padding:76px 0; scroll-margin-top:130px; }
body.jx-site .ca-white { background:#fff; }
body.jx-site .ca-intro-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; }
body.jx-site .ca-intro-grid p + p { margin-top:18px; }
body.jx-site .ca-history { display:grid; grid-template-columns:1fr 1fr; gap:48px; list-style:none; margin:36px 0 0; padding:0; }
body.jx-site .ca-history li { padding:24px 0; border-top:1px solid #dce2d8; }
body.jx-site .ca-history b { display:block; font:600 34px/1.4 Arial,sans-serif; color:#155d43; margin-bottom:12px; }
body.jx-site .ca-history h3 { margin-bottom:10px; }
body.jx-site .ca-history p { font-size:15px; }
body.jx-site .ca-text-link { display:inline-flex; gap:12px; margin-top:26px; color:#155d43; font-size:15px; text-decoration:none; border-bottom:1px solid #adc0b3; padding-bottom:4px; }
body.jx-site .ca-heading { display:flex; gap:40px; justify-content:space-between; align-items:end; margin-bottom:34px; }
body.jx-site .ca-heading > p { max-width:490px; }
body.jx-site .ca-heading .ca-text-link { flex-shrink:0; margin:0; }
body.jx-site .ca-functions { display:grid; grid-template-columns:1fr 1fr; column-gap:50px; }
body.jx-site .ca-functions article { display:grid; grid-template-columns:40px 1fr; gap:16px; padding:26px 0; border-top:1px solid #dce2d8; }
body.jx-site .ca-functions article > span { color:#b77340; font-size:14px; padding-top:5px; }
body.jx-site .ca-functions h3 { margin-bottom:12px; }
body.jx-site .ca-functions p { font-size:15px; }
body.jx-site .ca-functions a { display:inline-block; margin-top:16px; color:#155d43; text-decoration:none; font-size:14px; }
body.jx-site .ca-wide-photo { margin-top:30px; }
body.jx-site .ca-wide-photo img { aspect-ratio:2.1; object-fit:cover; }
body.jx-site .ca-wide-photo figcaption { color:#6a776e; font-size:12px; line-height:1.8; margin-top:12px; }
body.jx-site .ca-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 24px; }
body.jx-site .ca-learning-gallery { margin-top:30px; }
body.jx-site .ca-gallery img { aspect-ratio:1.5; object-fit:cover; }
body.jx-site .ca-gallery figcaption { padding-top:12px; color:#526459; font-size:14px; line-height:1.8; }
body.jx-site .ca-records { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
body.jx-site .ca-records img { aspect-ratio:1.5; object-fit:contain; background:#f6f5ef; }
body.jx-site .ca-records figcaption { margin-top:12px; color:#647268; font-size:13px; line-height:1.8; }
body.jx-site .ca-photo-copy { display:grid; grid-template-columns:1.05fr .95fr; gap:70px; align-items:center; }
body.jx-site .ca-photo-copy img { aspect-ratio:1.4; object-fit:cover; }
body.jx-site .ca-photo-copy figcaption { font-size:12px; color:#6a776e; line-height:1.8; margin-top:12px; }
body.jx-site .ca-photo-copy p { margin-top:22px; }
body.jx-site .ca-photo-copy blockquote { margin:26px 0 0; border-left:3px solid #e77935; padding-left:20px; color:#155d43; font-size:19px; line-height:1.9; }
body.jx-site .ca-values { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
body.jx-site .ca-values li { display:grid; grid-template-columns:40px 1fr; gap:18px; border-top:1px solid #dce2d8; padding:28px 0; }
body.jx-site .ca-values li > span { color:#b77340; font-size:14px; padding-top:5px; }
body.jx-site .ca-values h3 { margin-bottom:10px; }
body.jx-site .ca-values p { font-size:15px; }
body.jx-site .ca-principles { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:34px; }
body.jx-site .ca-principles article { border-top:2px solid #c3d0c3; padding-top:20px; }
body.jx-site .ca-principles span { display:block; color:#155d43; font-size:26px; margin-bottom:16px; }
body.jx-site .ca-principles h3 { font-size:18px; margin-bottom:12px; }
body.jx-site .ca-principles p { font-size:14px; }
body.jx-site .ca-note { border-left:3px solid #e77935; padding:20px 24px; background:#f5f3ea; margin-top:30px; }
body.jx-site .ca-note p { font-size:14px; }
body.jx-site .ca-closing { padding:40px 0; background:#edf1e9; border-block:1px solid #dce2d8; }
body.jx-site .ca-closing .ca-wrap { display:flex; align-items:center; justify-content:space-between; gap:30px; }
body.jx-site .ca-closing h2 { font-size:27px; }
body.jx-site .ca-closing p { font-size:14px; margin-top:10px; }
body.jx-site .ca-closing .ca-actions { margin:0; flex-shrink:0; }
body.jx-site dialog.ca-video { border:0; background:#fff; color:#173328; width:min(1000px,calc(100% - 40px)); max-height:90dvh; padding:24px; border-radius:6px; margin:auto; overflow:auto; }
body.jx-site dialog.ca-video:not([open]) { display:none; }
body.jx-site .ca-video::backdrop { background:#101c17d9; }
body.jx-site .ca-video-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }
body.jx-site .ca-video-head h2 { font-size:23px; }
body.jx-site .ca-video-head button { width:44px; height:44px; min-width:44px; border:1px solid #dce2d8; border-radius:4px; background:#f6f5ef; color:#155d43; font-size:28px; cursor:pointer; }
body.jx-site .ca-video video { display:block; width:100%; max-height:65dvh; background:#111; object-fit:contain; }
body.jx-site .ca-video a { display:inline-flex; margin-top:15px; color:#155d43; font-size:14px; }
body.ca-video-open { overflow:hidden; }
@media(max-width:980px) { body.jx-site .ca-wrap { width:calc(100% - 40px); } body.jx-site .ca-hero-grid { gap:36px; } body.jx-site .ca-intro-grid,body.jx-site .ca-photo-copy { gap:40px; } body.jx-site .ca-heading { gap:28px; } body.jx-site .ca-principles { grid-template-columns:repeat(2,minmax(0,1fr)); } body.jx-site .ca-closing .ca-wrap { flex-direction:column; align-items:start; } }
@media(max-width:700px) { body.jx-site .ca-hero { padding:34px 0 42px; } body.jx-site .ca-hero-grid,body.jx-site .ca-intro-grid,body.jx-site .ca-photo-copy { grid-template-columns:1fr; gap:28px; } body.jx-site .ca-page h1 { font-size:34px; } body.jx-site .ca-hero-photo img { aspect-ratio:1.4; } body.jx-site .ca-culture .ca-hero-photo img { aspect-ratio:1.5; } body.jx-site .ca-section { padding:48px 0; } body.jx-site .ca-heading { display:block; } body.jx-site .ca-heading > p,body.jx-site .ca-heading .ca-text-link { margin-top:20px; } body.jx-site .ca-functions,body.jx-site .ca-values { grid-template-columns:1fr; } body.jx-site .ca-history { gap:25px; } body.jx-site .ca-history b { font-size:30px; } body.jx-site .ca-history h3 { font-size:18px; } body.jx-site .ca-history p { font-size:14px; } body.jx-site .ca-gallery,body.jx-site .ca-records { grid-template-columns:1fr; } body.jx-site .ca-wide-photo img { aspect-ratio:1.5; } body.jx-site .ca-jump .ca-wrap { gap:12px 24px; } body.jx-site dialog.ca-video { width:calc(100% - 24px); padding:16px; } body.jx-site .ca-video-head h2 { font-size:19px; } }

/* ===== styles/development-detail.css ===== */
/* Keep approved timeline content readable with or without JavaScript. */
.history-page .history-entry { opacity: 1; transform: none; }
.history-page :is(.history-entry, .history-story, .history-copy) { min-width: 0; }
.history-page .history-entry.is-visible { animation: history-arrive .55s ease-out both; }
.history-page .history-photo { display: block; }
.history-page .history-photo:focus-visible { outline: 3px solid #e77935; outline-offset: 2px; }
.history-page .history-photo:focus-visible span { opacity: 1; }
.history-lightbox:not([open]) { display: none; }
.history-lightbox { width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; border: 0; color: #fff; }
.history-lightbox::backdrop { background: rgba(15, 12, 10, .94); }
.history-lightbox figure { max-height: calc(100dvh - 100px); }
.history-lightbox img { max-height: calc(100dvh - 150px); }
.history-lightbox button:focus-visible { outline: 3px solid #e77935; outline-offset: 3px; }
@keyframes history-arrive { from { transform: translateY(14px); } to { transform: translateY(0); } }
@media (min-width: 768px) and (max-width: 1050px) {
  .history-page .history-copy { grid-template-columns: 130px minmax(0, 1fr); gap: 20px 26px; }
  .history-page .history-description { grid-column: 1 / -1; }
  .history-page .history-copy h2 { max-width: 400px; margin-top: 2px; }
}
@media (max-width: 767px) { .history-lightbox { padding: 20px 12px; } }
@media (prefers-reduced-motion: reduce) { .history-page .history-entry.is-visible { animation: none; } }

/* ===== styles/faq-center.css ===== */
/* Jiaxing FAQ: a warm reference desk with a clear directory and calm reading. */
body.jx-site[data-page="faq_news"]{overflow-x:clip;overflow-y:visible}
.fq-page{--fq-line:#e1e5dc;--fq-text:#303e34;--fq-muted:#687167;background:#f6f5ef;color:var(--fq-text);padding-bottom:72px}
.fq-page *{box-sizing:border-box}
.fq-wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.fq-crumb{display:flex;flex-wrap:wrap;gap:12px;padding:22px 0;font-size:12px;color:var(--fq-muted)}
.fq-crumb a:hover{text-decoration:underline;text-underline-offset:4px}
.fq-hero{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:56px;padding:26px 0 34px}
.fq-kicker{display:flex;align-items:center;gap:10px;color:var(--jx-green);font-size:12px;font-weight:500;letter-spacing:1px;margin:0 0 12px}
.fq-kicker::before{content:'';width:20px;height:3px;background:var(--jx-orange);flex-shrink:0}
body.jx-site .fq-page h1{font-size:clamp(38px,4.2vw,58px);line-height:1.25;font-weight:600;letter-spacing:-.025em;margin:0 0 15px;color:var(--jx-deep)}
.fq-title-dot{color:var(--jx-orange);margin-left:3px}
.fq-intro{font-size:15px;line-height:1.9;color:#646c60;margin:0}
.fq-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:22px 0 0;font-size:12px;color:#71796c}
.fq-meta>span+span{padding-left:16px;border-left:1px solid #cfd6ca}
.fq-meta strong{font-size:17px;font-weight:500;color:var(--jx-green);font-variant-numeric:tabular-nums}
.fq-tools{min-width:0;padding:28px 0 24px;border-block:1px solid #d3dcd0}
.fq-search{display:block;font-size:16px;color:var(--fq-text);font-weight:500}
.fq-search-box{display:flex;align-items:center;gap:14px;min-height:64px;padding:0 18px;margin-top:14px;border:1px solid #bacabc;border-radius:7px;background:#fff;box-shadow:0 4px 16px #093e2d04}
.fq-search-box svg{width:22px;height:22px;flex-shrink:0;color:var(--jx-green)}
.fq-search-box:focus-within{outline:2px solid var(--jx-green);outline-offset:3px;border-color:transparent}
.fq-search-box input{font:inherit;font-weight:400;min-width:0;width:100%;padding:20px 0;border:0;outline:0;background:transparent;color:#253f2d;scroll-margin-top:160px}
.fq-search-box input::placeholder{color:#7a8275;font-size:15px}
.fq-search-caption{flex-shrink:0;font-size:12px;color:#687e6b;border-left:1px solid #e0e6dc;padding-left:14px}
.fq-hot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:#747d6e}
.fq-hot>span{margin-right:4px}
.fq-hot button{padding:6px 10px;min-height:34px;border:1px solid #dde3d6;background:#f1f3eb;color:#466450;border-radius:4px;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.fq-hot button:hover{background:#e8eede;border-color:#bfcdb8}
.fq-search-note{font-size:12px;margin:13px 0 0;color:#788070;line-height:1.8}
.fq-start{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--fq-line);border-radius:8px;background:#fff;overflow:hidden}
.fq-start>a{display:flex;align-items:center;gap:16px;min-height:96px;padding:20px 24px;color:var(--fq-text);transition:background .15s}
.fq-start>a+a{border-left:1px solid var(--fq-line)}
.fq-start>a:hover{background:#fafbf6}
.fq-start-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#eef3e8;flex-shrink:0;color:var(--jx-green)}
.fq-start>a:nth-child(2) .fq-start-icon{background:#fcf0e4;color:#a35b30}
.fq-start>a:nth-child(3) .fq-start-icon{background:#f2f3e3;color:#67733b}
.fq-start-icon svg{width:21px;height:21px;stroke-width:1.6}
.fq-start strong{font-size:15px;font-weight:500;line-height:1.7;display:block}
.fq-start-short{display:none}
.fq-start small{font-size:12px;color:#78816f;display:block;line-height:1.8;margin-top:3px}
.fq-start-arrow{margin-left:auto;font-size:21px;color:var(--jx-green);font-weight:300}
.fq-layout{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start;gap:36px;padding-top:34px}
.fq-sidebar{position:sticky;top:158px;background:#fff;border:1px solid var(--fq-line);border-radius:8px;max-height:calc(100dvh - 184px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d1daca transparent}
.fq-directory-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:21px 20px 16px;border-bottom:1px solid #edf0e7}
.fq-directory-heading strong{font-size:16px;font-weight:500;color:#314c37}
.fq-directory-heading>span{font-size:11px;color:#7c8474}
.fq-categories{padding:10px}
.fq-categories a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid transparent;border-radius:4px;min-height:42px;font-size:13px;line-height:1.7;color:#586553}
.fq-topic-name{min-width:0}
.fq-topic-count{font-size:11px;flex-shrink:0;color:#87917d;font-variant-numeric:tabular-nums}
.fq-categories a[aria-current="true"]{color:var(--jx-green);background:#edf2e6;border-color:#e1e9d8;font-weight:600}
.fq-categories a[aria-current="true"] .fq-topic-count{color:var(--jx-green)}
.fq-categories a:hover{background:#f3f5ee;color:var(--jx-green)}
.fq-directory-group{margin-top:14px}
.fq-directory-group>p{font-size:11px;color:#8a927e;letter-spacing:1px;padding:0 11px;margin:0 0 5px}
.fq-sidebar-help{padding:18px 20px 20px;border-top:1px solid var(--fq-line);background:#fbfcf7}
.fq-sidebar-help>span{display:block;font-size:12px;color:#7b8471;margin-bottom:6px}
.fq-sidebar-help>a{font-size:16px;color:var(--jx-green);font-weight:500;line-height:1.8}
.fq-sidebar-help>a>span{font-weight:400;margin-left:7px}
.fq-content{min-width:0;scroll-margin-top:154px}
.fq-result-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:2px 0 20px}
.fq-result-label{font-size:19px;line-height:1.65;font-weight:500;color:#283f2e;margin:0 0 4px;overflow-wrap:anywhere}
.fq-count{font-size:12px;line-height:1.8;color:#7a8272;margin:0}
.fq-result-actions{display:flex;gap:4px;flex-wrap:wrap}
.fq-result-actions button{border:1px solid #dde3d7;background:transparent;min-height:36px;padding:7px 10px;border-radius:4px;color:#5c6d55;font:inherit;font-size:12px;cursor:pointer}
.fq-result-actions button:hover{border-color:#bdcdb5;background:#edf2e6;color:var(--jx-green)}
.fq-mobile-filter{display:none}
.fq-group{margin-bottom:24px;scroll-margin-top:158px}
.fq-group-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0 16px}
.fq-group:first-of-type .fq-group-header{padding-top:0}
.fq-group-heading{display:flex;align-items:center;gap:12px}
.fq-group-heading>span{color:#a16742;font-size:12px;line-height:26px;font-variant-numeric:tabular-nums;border-bottom:2px solid #df9e63;flex-shrink:0}
body.jx-site .fq-page h2{font-size:22px;line-height:1.6;color:#2a4431;font-weight:500;margin:0;letter-spacing:0}
.fq-group-description{font-size:13px;color:#7a8172;line-height:1.9;margin:7px 0 0;max-width:620px}
.fq-topic-source{font-size:12px;color:#637e5d;flex-shrink:0;padding:7px 0;border-bottom:1px solid #bccdb4;line-height:1.6}
.fq-topic-source span{margin-left:5px}
.fq-question-list{border:1px solid var(--fq-line);border-radius:7px;background:#fff;overflow:hidden}
.fq-item{scroll-margin-top:158px;background:#fff}
.fq-item+.fq-item{border-top:1px solid #edf0e8}
.fq-item summary{padding:21px 22px;display:flex;gap:15px;align-items:baseline;cursor:pointer;list-style:none;font-size:16px;line-height:1.75;color:#394a3b}
.fq-item summary::-webkit-details-marker{display:none}
.fq-item summary:hover{background:#fafbf7;color:var(--jx-green)}
.fq-question-number{font-size:11px;color:#a1a993;font-variant-numeric:tabular-nums;flex-shrink:0;width:17px}
.fq-question{min-width:0}
.fq-toggle-mark{margin-left:auto;align-self:center;width:25px;height:25px;border:1px solid #dae4d1;background:#f8faf3;border-radius:50%;position:relative;flex-shrink:0;color:var(--jx-green)}
.fq-toggle-mark::before,.fq-toggle-mark::after{content:'';position:absolute;left:7px;right:7px;height:1px;top:11px;background:currentColor}
.fq-toggle-mark::after{transform:rotate(90deg)}
.fq-item[open]{background:#fafbf6}
.fq-item[open] .fq-toggle-mark{background:var(--jx-green);color:#fff;border-color:var(--jx-green)}
.fq-item[open] .fq-toggle-mark::after{display:none}
.fq-item[open] summary{color:var(--jx-green);font-weight:500;background:#fafbf6}
.fq-item:target{box-shadow:inset 3px 0 #da9358}
.fq-answer{padding:0 62px 24px 54px;font-size:15px;line-height:2;color:#63715f}
.fq-answer>p{margin:0 0 18px;max-width:72ch}
.fq-answer-links{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;font-size:12px;line-height:1.8}
.fq-answer-links>a{padding:4px 0;color:#52764b;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bed0b2}
.fq-answer-links>a:hover{color:var(--jx-deep)}
.fq-empty{padding:28px;border:1px solid var(--fq-line);border-radius:7px;background:white;font-size:14px;line-height:1.9;margin:0 0 28px}
.fq-empty strong{color:var(--jx-green);font-weight:500}
.fq-empty p{color:#77816c;margin:9px 0 16px}
.fq-empty a{color:var(--jx-green);text-decoration:underline;text-underline-offset:4px}
.fq-shortlist{padding:12px 0;border-block:1px solid var(--fq-line);margin-top:32px}
.fq-shortlist>summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer;padding:12px 0;color:#5d7054;font-size:13px;min-height:44px}
.fq-shortlist>summary::-webkit-details-marker{display:none}
.fq-shortlist>summary>span{color:var(--jx-green);font-size:18px}
.fq-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;padding:8px 0}
.fq-featured a{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:14px 0;font-size:13px;line-height:1.9;color:#5b7053;border-top:1px solid #e4e8df}
.fq-featured a span{color:#aa693e;flex-shrink:0}
.fq-note{padding:26px 0 0;margin-top:10px;font-size:12px;line-height:1.95;color:#808674}
.fq-note strong{color:#66775a;font-weight:500}
.fq-note p{margin:6px 0 0}
.fq-note a{color:#59744f;text-decoration:underline;text-underline-offset:3px}
.fq-bottom{margin-top:44px;border-top:1px solid #cfdbc5;background:#edf1e5;border-radius:8px;padding:36px 40px;display:flex;justify-content:space-between;align-items:center;gap:36px}
body.jx-site .fq-bottom h2{font-size:24px;color:var(--jx-deep);font-weight:500;line-height:1.7;margin:0 0 9px}
.fq-bottom p:not(.fq-kicker){font-size:14px;line-height:1.9;margin:0;color:#748066}
.fq-bottom-actions{display:grid;gap:14px;flex-shrink:0;min-width:170px}
.fq-bottom-actions>a{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:46px;padding:12px 20px;border:1px solid var(--jx-green);background:var(--jx-green);color:white;border-radius:4px;font-size:13px}
.fq-bottom-actions>.fq-contact-link{background:transparent;color:var(--jx-green);border-color:#bfceb2}
.fq-return{display:none}
.fq-page [hidden]{display:none!important}
.fq-page :focus-visible{outline:3px solid #9b552d;outline-offset:4px}
.fq-item summary:focus-visible{outline-offset:-4px}
.fq-page input:focus-visible{outline:0}
.fq-page :is(.fq-intro,.fq-meta,.fq-hot,.fq-search-note,.fq-start small,.fq-directory-heading>span,.fq-topic-count,.fq-directory-group>p,.fq-sidebar-help>span,.fq-count,.fq-group-description,.fq-empty p,.fq-note){color:#66705e}
@media(max-width:1100px){.fq-hero{gap:30px;grid-template-columns:.9fr 1.1fr}.fq-start>a{padding:18px;gap:12px}.fq-start strong{font-size:14px}.fq-start-icon{width:36px;height:36px}.fq-layout{grid-template-columns:228px minmax(0,1fr);gap:28px}.fq-topic-source{display:none}}
@media(max-width:980px){.fq-sidebar{top:136px;max-height:calc(100dvh - 160px)}.fq-group,.fq-item,.fq-content{scroll-margin-top:136px}.fq-start small{font-size:11px}.fq-result-bar{align-items:start}.fq-answer{padding-right:36px}.fq-meta{gap:8px 12px}.fq-meta>span+span{padding-left:12px}.fq-search-caption{display:none}}
@media(max-width:720px){.fq-wrap{width:calc(100% - 36px)}.fq-crumb{padding:18px 0 12px}.fq-hero{grid-template-columns:1fr;gap:22px;padding:22px 0 24px}.fq-kicker{font-size:12px;margin-bottom:10px}body.jx-site .fq-page h1{font-size:38px;margin-bottom:10px}.fq-intro{font-size:14px;line-height:1.9}.fq-meta{margin-top:15px;font-size:11px}.fq-meta strong{font-size:15px}.fq-tools{padding:0;border:0}.fq-search{font-size:14px}.fq-search-box{min-height:55px;padding-inline:14px;gap:12px;margin-top:10px}.fq-search-box input{padding:17px 0;font-size:15px}.fq-hot{margin-top:12px;font-size:12px;gap:7px}.fq-hot button{padding:5px 8px}.fq-search-note{display:none}.fq-start{grid-template-columns:1fr;border-radius:6px}.fq-start>a{min-height:76px;padding:15px 17px;gap:14px}.fq-start>a+a{border-left:0;border-top:1px solid var(--fq-line)}.fq-start small{font-size:12px}.fq-start strong{font-size:14px}.fq-start-icon{width:38px;height:38px}.fq-layout{grid-template-columns:1fr;gap:0;padding-top:24px}.fq-sidebar{display:none}.fq-mobile-filter{display:grid;gap:9px;font-size:12px;color:#607754;margin:0 0 20px}.fq-mobile-filter select{width:100%;padding:12px;min-height:48px;border:1px solid #cedac2;border-radius:5px;background:white;color:#3e573c;font:inherit;font-size:14px}.fq-result-bar{gap:12px;padding-bottom:17px}.fq-result-label{font-size:18px}.fq-result-actions button{padding:7px 9px;font-size:11px;min-height:34px}.fq-result-actions{gap:5px}.fq-count{font-size:11px}.fq-group{margin-bottom:20px}.fq-group-header{padding-top:10px;padding-bottom:14px}body.jx-site .fq-page h2{font-size:20px}.fq-group-description{font-size:12px;margin-top:7px}.fq-item summary{padding:18px 15px;gap:10px;font-size:15px;line-height:1.8}.fq-question-number{font-size:10px;width:14px}.fq-toggle-mark{width:23px;height:23px}.fq-toggle-mark::before,.fq-toggle-mark::after{top:10px;left:6px;right:6px}.fq-answer{font-size:14px;line-height:2;padding:0 28px 21px 39px}.fq-answer-links{gap:12px 20px;font-size:11px}.fq-featured{grid-template-columns:1fr}.fq-note{font-size:11px}.fq-bottom{padding:28px 23px;display:block;margin-top:30px;border-radius:6px}body.jx-site .fq-bottom h2{font-size:22px}.fq-bottom p:not(.fq-kicker){font-size:13px}.fq-bottom-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;min-width:0}.fq-bottom-actions>a{flex:1;min-width:128px;padding:12px 14px;font-size:12px}.fq-page{padding-bottom:36px}.fq-return{position:fixed;z-index:45;left:18px;bottom:18px;display:flex;gap:8px;align-items:center;min-height:44px;padding:10px 14px;background:#fff;border:1px solid #bfd1b4;border-radius:24px;box-shadow:0 4px 18px #093e2d12;color:var(--jx-green);font-size:12px}.fq-return svg{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.fq-page *{transition:none!important}}
@media(max-width:720px){.fq-start{grid-template-columns:repeat(3,minmax(0,1fr))}.fq-start>a{padding:16px 8px;min-height:100px;flex-direction:column;justify-content:center;gap:9px;text-align:center}.fq-start>a+a{border-top:0;border-left:1px solid var(--fq-line)}.fq-start-icon{width:32px;height:32px}.fq-start-icon svg{width:18px;height:18px}.fq-start small,.fq-start-long,.fq-start-arrow{display:none}.fq-start-short{display:inline}.fq-start strong{font-size:13px}.fq-hot>span{flex-basis:100%;font-size:11px;margin-bottom:1px}.fq-hot button{min-height:38px;padding-inline:10px}.fq-result-actions button:disabled{opacity:.4;cursor:default}}
@media(max-width:720px){body.jx-site[data-page="faq_news"] .contact-widget{display:none}.fq-mobile-filter{position:sticky;top:var(--fq-header-height,124px);z-index:25;background:#f6f5ef;padding:10px 0 12px;border-bottom:1px solid var(--fq-line);box-shadow:0 4px 0 #f6f5ef}.fq-mobile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.fq-mobile-toolbar>div{display:flex;align-items:center;gap:18px}.fq-mobile-toolbar a{display:inline-flex;align-items:center;min-height:32px;color:var(--jx-green);font-size:12px}.fq-mobile-toolbar .fq-return{position:static;min-height:32px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;font-size:12px}.fq-group,.fq-item,.fq-content{scroll-margin-top:calc(var(--fq-header-height,124px) + 118px)}}

/* ===== styles/honor-cylinder.css ===== */
/* A photograph cylinder embedded in the original Jiaxing honors page. */
[data-cylinder-section] { scroll-margin-top: 154px; }
.hc-wall {
  --hc-green: #155d43;
  --hc-deep: #093e2d;
  --hc-orange: #e77935;
  --hc-lime: #b8ca4b;
  --hc-paper: #f6f5ef;
  --hc-line: #c4d0bc;
  --hc-muted: #667460;
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--hc-line);
  border-radius: 12px;
  background: var(--hc-paper);
  color: #314b36;
  isolation: isolate;
  scroll-margin-top: calc(var(--hc-header-height, 142px) + 16px);
}
.hc-wall *, .hc-wall *::before, .hc-wall *::after { box-sizing: border-box; }
.hc-wall [hidden], .hc-original-grid[hidden] { display: none !important; }
.hc-wall :is(div, p, strong, span, button) { min-width: 0; }
.hc-wall :is(p, strong, span, button) { overflow-wrap: anywhere; }
.hc-wall button { font: inherit; cursor: pointer; }
.hc-wall button:disabled { cursor: default; opacity: .45; }
.hc-wall :is(button, a, [tabindex]):focus-visible { outline: 3px solid var(--hc-orange); outline-offset: 4px; }
.hc-wall svg[data-lucide] { display: block; width: 18px; height: 18px; flex: 0 0 18px; }
.hc-wall-bar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px 24px; padding: 23px 28px 21px; border-bottom: 1px solid #d0d9c7; background: #fffefa; }
body.jx-site .hc-wall .hc-wall-title p { display: flex; align-items: center; gap: 9px; margin: 0 0 7px; color: #7b875f; font-size: 10px; font-weight: 600; line-height: 1.8; letter-spacing: .12em; }
.hc-wall-title p::before { content: ""; width: 19px; height: 2px; flex: 0 0 19px; background: var(--hc-orange); }
body.jx-site .hc-wall .hc-wall-title strong { display: block; color: var(--hc-deep); font-size: 20px; font-weight: 500; line-height: 1.55; letter-spacing: -.02em; }
.hc-views { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; flex-shrink: 0; }
body.jx-site .hc-wall .hc-views button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; margin: 0; padding: 10px 15px; border: 1px solid #b9c6aa; border-radius: 5px; background: transparent; color: #5e7154; font-size: 12px; font-weight: 500; line-height: 1.6; box-shadow: none; }
body.jx-site .hc-wall .hc-views button:hover { border-color: #608359; background: #edf1e6; }
body.jx-site .hc-wall .hc-views button[aria-pressed="true"] { border-color: #155d43; background: #155d43; color: #fff; }
.hc-stage { position: relative; height: 640px; overflow: hidden; background: radial-gradient(ellipse at 50% 58%, #e0e8d76e 0, transparent 66%), #f6f5ef; isolation: isolate; touch-action: pan-y; }
.hc-stage canvas.hc-canvas { position: absolute; inset: 0; display: block; width: 100%; height: 100%; outline: none; }
.hc-canvas { cursor: grab; }
.hc-canvas:active { cursor: grabbing; }
.hc-stage-guide { position: absolute; z-index: 2; left: 26px; bottom: 20px; display: flex; align-items: center; gap: 8px; max-width: calc(100% - 52px); margin: 0; padding: 6px 9px; border: 1px solid #afbea28a; border-radius: 3px; background: #fffef9d9; color: #62745c; font-size: 10px; line-height: 1.85; pointer-events: none; }
.hc-stage-guide::before { content: ""; width: 5px; height: 5px; flex: 0 0 5px; background: var(--hc-orange); border-radius: 50%; }
.hc-stage-counter { position: absolute; z-index: 2; right: 25px; top: 19px; display: flex; align-items: center; gap: 7px; max-width: calc(100% - 50px); margin: 0; padding: 5px 10px; border: 1px solid #b6c3a9a8; border-radius: 3px; background: #fffefaeb; color: #576a4c; font-size: 11px; line-height: 1.8; font-variant-numeric: tabular-nums; pointer-events: none; }
.hc-stage-counter strong { color: #155d43; font-size: 13px; font-weight: 500; }
.hc-loading { position: absolute; z-index: 3; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 14px; padding: 25px; background: #f6f5eff0; color: #617556; font-size: 13px; line-height: 1.9; text-align: center; }
.hc-loading::before { content: ""; width: 29px; height: 29px; border: 1px solid #c1cfb1; border-top-color: #155d43; border-right-color: #b8ca4b; border-radius: 50%; animation: hc-load-turn 1.3s linear infinite; }
.hc-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 13px 24px; padding: 15px 25px; border-top: 1px solid #cad5bf; background: #fffefa; }
body.jx-site .hc-wall .hc-toolbar-hint { margin: 0; color: #63765a; font-size: 11px; line-height: 1.9; }
.hc-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
body.jx-site .hc-wall .hc-tools button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 44px; min-height: 44px; margin: 0; padding: 10px 12px; border: 1px solid #b6c5a6; border-radius: 5px; background: #fffefa; color: #285b3f; font-size: 11px; font-weight: 400; line-height: 1.6; box-shadow: none; }
body.jx-site .hc-wall .hc-tools button:hover { background: #edf2e5; border-color: #6e8e61; }
body.jx-site .hc-wall .hc-tools button[aria-pressed="true"] { background: #e3eccd; color: #164e34; border-color: #8ba243; }
.hc-tools button svg { width: 17px; height: 17px; flex-basis: 17px; }
body.jx-site .hc-wall .hc-footnote { margin: 0; padding: 11px 26px 13px; border-top: 1px solid #e0e4d7; color: #778168; background: #f3f4ea; font-size: 10px; line-height: 1.9; }
.hc-wall[data-view="grid"] :is(.hc-stage, .hc-toolbar),
.hc-wall[data-renderer="fallback"] :is(.hc-stage, .hc-toolbar),
.hc-wall:not([data-renderer="webgl"]) .hc-canvas { display: none !important; }
.hc-ready[data-view="3d"] .hc-original-grid { display: none !important; }
.hc-ready[data-view="grid"] .hc-original-grid { display: block; }
.hc-original-grid { margin-top: 28px; }
@keyframes hc-load-turn { to { transform: rotate(360deg); } }

@media (max-width: 980px) {
  .hc-stage { height: 570px; }
  .hc-wall-bar { padding: 20px 22px; }
  .hc-toolbar { padding: 15px 20px; gap: 10px 20px; }
  .hc-toolbar-hint { flex: 1 1 100%; }
  .hc-tools { margin-left: auto; }
  .hc-stage-guide { left: 20px; bottom: 16px; max-width: calc(100% - 40px); }
  .hc-stage-counter { top: 17px; right: 20px; }
  body.jx-site .hc-wall .hc-footnote { padding-inline: 21px; }
}
@media (max-width: 600px) {
  [data-cylinder-section] { scroll-margin-top: 138px; }
  .hc-wall { border-radius: 9px; }
  .hc-wall-bar { align-items: flex-start; padding: 14px 15px 13px; gap: 10px; }
  .hc-wall-title { flex: 1 1 100%; }
  body.jx-site .hc-wall .hc-wall-title p { font-size: 9px; margin-bottom: 4px; letter-spacing: .1em; }
  body.jx-site .hc-wall .hc-wall-title strong { font-size: 18px; line-height: 1.6; }
  .hc-views { margin-left: auto; gap: 5px; }
  body.jx-site .hc-wall .hc-views button { min-height: 44px; padding-inline: 12px; font-size: 11px; }
  .hc-stage { height: 460px; }
  .hc-stage-counter { top: 14px; right: 14px; font-size: 10px; padding: 4px 8px; }
  .hc-stage-guide { left: 13px; bottom: 14px; max-width: calc(100% - 26px); padding: 5px 7px; font-size: 9px; }
  .hc-toolbar { padding: 13px; gap: 10px; }
  body.jx-site .hc-wall .hc-toolbar-hint { font-size: 10px; }
  .hc-tools { justify-content: space-between; flex: 1 1 100%; gap: 5px; margin: 0; }
  body.jx-site .hc-wall .hc-tools button { flex: 1 0 44px; min-width: 44px; min-height: 44px; padding: 9px; font-size: 10px; }
  .hc-tools button > span { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  body.jx-site .hc-wall .hc-footnote { padding: 10px 14px 12px; font-size: 9px; }
  .hc-original-grid { margin-top: 20px; }
}
/* Keep the existing booking shortcut from covering cylinder controls on phones. */
@media (max-width: 720px) {
  body.jx-site[data-page="jiaxing_honor"].hc-wall-viewing .contact-widget { display: none !important; }
}
@media (max-width: 360px) {
  .hc-wall-bar { padding-inline: 12px; }
  .hc-toolbar { padding-inline: 10px; }
  .hc-tools { gap: 4px; }
  body.jx-site .hc-wall .hc-tools button { flex-grow: 0; }
}
/* A dark archival chamber; image textures stay in their original color space. */
.hc-wall { --hc-deep: #ecf6ed; --hc-line: #315448; --hc-paper: #071613; color: #dbebe2; border-radius: 14px; box-shadow: 0 24px 65px #062b2426; }
.hc-wall-bar { background: #0d211c; border-color: #315044; }
body.jx-site .hc-wall .hc-wall-title p { color: #a7be90; }
body.jx-site .hc-wall .hc-wall-title strong { color: #f0f7ee; }
.hc-stage { height: 780px; background: radial-gradient(ellipse at 50% 62%, #24513c66 0, #091e19 48%, #040e0c 100%); }
.hc-stage::before { content: ""; position: absolute; inset: 18px; border: 1px solid #80bb8533; clip-path: polygon(0 0, 15% 0, 15% 1%, 1% 1%, 1% 18%, 0 18%, 0 0, 100% 0, 100% 18%, 99% 18%, 99% 1%, 85% 1%, 85% 0, 100% 0, 100% 100%, 85% 100%, 85% 99%, 99% 99%, 99% 82%, 100% 82%, 100% 100%, 0 100%, 0 82%, 1% 82%, 1% 99%, 15% 99%, 15% 100%, 0 100%); pointer-events: none; z-index: 1; }
.hc-stage::after { content: "360° / 荣誉档案"; position: absolute; top: 23px; left: 28px; color: #a9c699; letter-spacing: .16em; font: 10px/1.8 ui-monospace, monospace; pointer-events: none; }
.hc-stage-guide, .hc-stage-counter { color: #bdd2c5; border-color: #416a554d; background: #081b16e8; border-radius: 2px; }
.hc-stage-counter strong { color: #d4e595; }
.hc-loading { background: #081b16f5; color: #d4e5d8; }
.hc-loading::before { border-color: #294c3e; border-top-color: #96d2a5; border-right-color: #b8ca4b; }
.hc-toolbar { background: #0b201a; border-color: #345144; }
body.jx-site .hc-wall .hc-toolbar-hint { color: #a8bfb0; }
body.jx-site .hc-wall :is(.hc-views,.hc-tools) button { color: #c6d9cb; background: #112c23; border-color: #3c5b47; border-radius: 4px; }
body.jx-site .hc-wall :is(.hc-views,.hc-tools) button:hover { color: #f2f9e7; background: #214633; border-color: #a5c76c; }
body.jx-site .hc-wall :is(.hc-views,.hc-tools) button[aria-pressed="true"] { background: #c6d884; color: #12271a; border-color: #d4e99a; box-shadow: 0 0 18px #b8ca4b17; }
body.jx-site .hc-wall .hc-footnote { background: #081812; color: #9caf9e; border-color: #2a4134; }
@media (max-width: 600px) {
  .hc-stage { height: 580px; }
  .hc-stage::after { top: 19px; left: 15px; font-size: 8px; letter-spacing: .04em; }
  .hc-stage::before { inset: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .hc-wall *, .hc-wall *::before, .hc-wall *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ===== styles/organization-detail.css ===== */
/* Organization page: roles from the supplied staff archive. */
body.jx-site .org-hero h1 span { color: #e5edd8; }
body.jx-site .org-lead-grid img { height: auto; aspect-ratio: 4/5; object-fit: contain; object-position: center; background: #f8f9f5; }
body.jx-site .org-cta .org-button { background: #fff; color: #155d43; border: 1px solid #fff; }
body.jx-site .org-cta .org-button:hover { background: #f1f3e8; }
.org-responsibility-list { margin: 0; border-top: 1px solid #dce4dc; }
.org-responsibility-list > div { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr); gap: 36px; padding: 30px 0; border-bottom: 1px solid #dce4dc; }
.org-responsibility-list dt { display: flex; align-items: baseline; gap: 24px; color: #183d30; font-size: 24px; font-weight: 700; }
.org-responsibility-list dt span { color: #ac683a; font: 500 14px/1.5 Arial, sans-serif; }
.org-responsibility-list dd { margin: 0; }
.org-responsibility-list dd strong { color: #183d30; font-size: 18px; font-weight: 600; }
.org-responsibility-list dd p { margin: 8px 0 0; color: #5b625e; font-size: 16px; line-height: 1.8; }
@media (max-width: 767px) {
  .org-responsibility-list > div { grid-template-columns: 1fr; gap: 15px; padding: 25px 0; }
  .org-responsibility-list dt { gap: 18px; font-size: 22px; }
}

/* ===== styles/search-completion.css ===== */
/* Search is a reading and navigation tool; keep its visual treatment quiet. */
body[data-page="search"] .site-search { background:#f6f5ef; color:#263b30; }
body[data-page="search"] .site-search .container { width:min(1160px,calc(100% - 64px)); }
body[data-page="search"] .search-head { background:#f6f5ef; color:#263b30; padding:42px 0 48px; border-bottom:1px solid #d7dfd1; }
body[data-page="search"] .search-head h1 { color:#093e2d; font-size:clamp(30px,3.4vw,44px); line-height:1.4; margin:22px 0 28px; letter-spacing:-.02em; }
body[data-page="search"] .search-head .kicker { color:#155d43; margin-top:26px; }
body[data-page="search"] .search-breadcrumb { color:#69766b; font-size:13px; }
body[data-page="search"] .search-form { display:flex; align-items:center; max-width:820px; background:#fff; border:1px solid #bbc9b5; border-radius:4px; padding:5px 5px 5px 18px; box-shadow:none; gap:12px; }
body[data-page="search"] .search-form>svg { color:#6c7b6c; flex-shrink:0; width:20px; height:20px; }
body[data-page="search"] .search-form input { flex:1; width:0; min-width:0; border:0; box-shadow:none; height:48px; background:#fff; color:#263b30; font-size:16px; }
body[data-page="search"] .search-form button { flex-shrink:0; background:#155d43; color:#fff; padding:12px 22px; border:0; border-radius:3px; min-height:48px; font-weight:700; }
body[data-page="search"] .search-form button:hover { background:#093e2d; }
body[data-page="search"] .search-suggestions { margin-top:20px; display:flex; align-items:center; flex-wrap:wrap; gap:10px; color:#6a7769; font-size:13px; }
body[data-page="search"] .search-suggestions button { background:transparent; border:0; padding:6px 10px; color:#155d43; min-height:36px; font-size:13px; }
body[data-page="search"] .search-suggestions button:hover { background:#e8ecdf; }
body[data-page="search"] .search-content { padding:40px 0 72px; }
body[data-page="search"] .search-layout { display:grid; grid-template-columns:190px minmax(0,1fr); gap:50px; }
body[data-page="search"] .search-filter { background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; align-self:start; position:static; }
body[data-page="search"] .search-filter h2 { font-size:16px; color:#264b34; margin:0 0 14px; }
body[data-page="search"] [data-search-filters] { display:flex; flex-direction:column; gap:2px; min-width:0; }
body[data-page="search"] [data-search-filters] button { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px; border:0; border-radius:3px; background:transparent; font-size:14px; color:#62715f; min-height:44px; }
body[data-page="search"] [data-search-filters] button b { font-size:12px; font-weight:500; color:inherit; }
body[data-page="search"] [data-search-filters] button.is-active { background:#e6eadc; color:#155d43; font-weight:700; }
body[data-page="search"] .search-results-head { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:20px; border-bottom:1px solid #ccd7c4; }
body[data-page="search"] .search-results-head>div { min-width:0; flex:1; }
body[data-page="search"] [data-search-summary] { font-size:17px; color:#243f2d; line-height:1.7; overflow-wrap:anywhere; margin:0 0 10px; }
body[data-page="search"] [data-search-hint] { font-size:12px; color:#788271; }
body[data-page="search"] .search-sort { flex-shrink:0; font-size:12px; color:#60705e; }
body[data-page="search"] .search-sort select { border:1px solid #c2cdbb; border-radius:3px; background:#fff; min-height:38px; color:#37573d; }
body[data-page="search"] .search-load-status { font-size:12px; color:#778271; line-height:1.7; margin:18px 0; }
body[data-page="search"] .search-results { display:block; }
body[data-page="search"] .search-result-item { display:block; border:0; border-bottom:1px solid #d6decd; border-radius:0; background:transparent; padding:26px 0; box-shadow:none; }
body[data-page="search"] .search-result-item:first-child { padding-top:14px; }
body[data-page="search"] .search-result-meta { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:10px; font-size:12px; color:#798571; }
body[data-page="search"] .search-result-category { color:#155d43; font-size:12px; background:transparent; padding:0; }
body[data-page="search"] .search-result-item h2 { font-size:22px; color:#183e2a; line-height:1.6; margin:0 0 10px; overflow-wrap:anywhere; }
body[data-page="search"] .search-result-item h2 a:hover { text-decoration:underline; text-underline-offset:5px; }
body[data-page="search"] .search-result-item p { color:#64715e; font-size:15px; line-height:1.9; margin:0 0 14px; }
body[data-page="search"] .search-result-link { color:#155d43; font-size:13px; }
body[data-page="search"] .search-result-item mark { background:#f9e1bd; color:#244b31; padding:0 2px; }
body[data-page="search"] .search-empty { background:transparent; border:0; box-shadow:none; text-align:left; padding:40px 0; }
body[data-page="search"] .search-empty h2 { color:#274b32; font-size:25px; }
body[data-page="search"] .search-empty p { color:#6a7663; font-size:15px; line-height:1.8; }
body[data-page="search"] .search-empty a { color:#155d43; font-size:14px; }
@media(max-width:760px) {
 body[data-page="search"] .site-search .container { width:calc(100% - 36px); }
 body[data-page="search"] .search-head { padding:28px 0 34px; }
 body[data-page="search"] .search-head h1 { font-size:30px; }
 body[data-page="search"] .search-form { padding-left:12px; gap:5px; }
 body[data-page="search"] .search-form>svg { display:none; }
 body[data-page="search"] .search-form button { padding-inline:18px; }
 body[data-page="search"] .search-form button span { display:inline; }
 body[data-page="search"] .search-form button svg { display:none; }
 body[data-page="search"] .search-layout { grid-template-columns:1fr; gap:26px; }
 body[data-page="search"] .search-filter { overflow:visible; }
 body[data-page="search"] .search-filter h2 { display:block; font-size:14px; }
 body[data-page="search"] [data-search-filters] { flex-direction:row; flex-wrap:wrap; gap:8px; min-width:0; width:100%; }
 body[data-page="search"] [data-search-filters] button { min-height:40px; padding:8px 11px; background:#ebeede; gap:9px; font-size:12px; }
 body[data-page="search"] [data-search-filters] button.is-active { background:#155d43; color:#fff; }
 body[data-page="search"] .search-results-head { gap:18px; }
 body[data-page="search"] .search-results-head>div { flex-basis:100%; }
 body[data-page="search"] .search-sort { display:flex; }
 body[data-page="search"] .search-result-item h2 { font-size:20px; }
}

/* ===== styles/service-network.css ===== */
/* Zunyi service map: dimensional geography above practical service information. */
body.jx-site[data-page="service_area"] { overflow-x: clip; overflow-y: visible; }
.sa-page {
  --sa-night: #071b18;
  --sa-panel: #0b2420;
  --sa-panel-light: #102f27;
  --sa-green: #155d43;
  --sa-lime: #c3d766;
  --sa-orange: #e77935;
  --sa-white: #f3f6ee;
  --sa-muted: #a9c0b1;
  --sa-line: #24483b;
  --sa-paper: #f6f5ef;
  --sa-ink: #303e34;
  color: var(--sa-ink);
  background: var(--sa-paper);
  isolation: isolate;
}
.sa-page *, .sa-page *::before, .sa-page *::after { box-sizing: border-box; }
.sa-page [hidden] { display: none !important; }
.sa-page :is(section, article, aside, div, dl, li) { min-width: 0; }
.sa-page :is(p, h1, h2, h3, a, button, dt, dd, label) { overflow-wrap: anywhere; }
.sa-page :is(button, input, select) { font: inherit; }
.sa-page button { cursor: pointer; }
.sa-page button:disabled { cursor: default; opacity: .45; }
.sa-page :is(a, button, input, select, [tabindex]):focus-visible { outline: 3px solid var(--sa-orange); outline-offset: 4px; }
.sa-page svg[data-lucide] { width: 18px; height: 18px; flex: 0 0 18px; }
.sa-wrap { width: min(1280px, calc(100% - 80px)); margin-inline: auto; }
.sa-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.sa-dark { position: relative; padding-bottom: 48px; background: var(--sa-night); color: var(--sa-white); overflow: clip; }
body.jx-site[data-page="service_area"] .sa-page > .sa-dark { background: var(--sa-night) !important; }
.sa-dark::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 30% 36%, #195d4330, transparent 55%); }
.sa-dark > .sa-wrap { position: relative; }
.sa-crumb { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 22px 0; font-size: 12px; line-height: 1.8; color: #a4b8ad; }
.sa-crumb a { color: inherit; text-underline-offset: 5px; }
.sa-crumb a:hover { color: var(--sa-lime); }
.sa-crumb [aria-current="page"] { color: #d5e2c4; }

.sa-hero { display: flex; align-items: end; justify-content: space-between; gap: 36px 64px; padding: 20px 0 36px; }
.sa-hero > div { max-width: 840px; }
.sa-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 17px; color: var(--sa-lime); font-size: 12px; line-height: 1.8; letter-spacing: .12em; font-weight: 600; }
.sa-eyebrow::before { content: ""; width: 22px; height: 2px; background: var(--sa-orange); flex-shrink: 0; }
body.jx-site .sa-page .sa-hero h1 { margin: 0 0 20px; color: var(--sa-white); font-size: clamp(36px, 3.9vw, 54px); line-height: 1.28; font-weight: 650; letter-spacing: -.02em; text-wrap: balance; }
.sa-hero h1 span { display: block; color: var(--sa-lime); }
body.jx-site .sa-page .sa-hero h1 { font-size: clamp(34px, 3.35vw, 48px); }
.sa-intro { max-width: 700px; margin: 0; color: #becdc1; font-size: 15px; line-height: 1.95; }
.sa-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 23px; }
.sa-hero-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 10px 20px; border: 1px solid #48624f; border-radius: 4px; color: var(--sa-white); background: transparent; font-size: 14px; line-height: 1.6; text-decoration: none; }
.sa-hero-actions a:first-child { background: var(--sa-lime); color: #122719; border-color: var(--sa-lime); font-weight: 600; }
.sa-hero-actions a:hover { border-color: var(--sa-lime); background: #17372b; }
.sa-hero-actions a:first-child:hover { background: #d1e37e; border-color: #d1e37e; }
.sa-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; flex: 0 0 250px; margin: 0 0 3px; }
.sa-overview > div { display: flex; flex-direction: column; gap: 9px; border-top: 1px solid #4c6652; padding-top: 15px; }
.sa-overview dd { order: 1; margin: 0; font-size: 46px; line-height: 1.2; color: var(--sa-lime); font-weight: 400; font-variant-numeric: tabular-nums; }
.sa-overview dd span { margin-left: 6px; color: #c1cfb5; font-size: 13px; font-weight: 400; }
.sa-overview dt { order: 2; color: var(--sa-muted); font-size: 12px; line-height: 1.8; }

.sa-console { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: stretch; gap: 20px; }
.sa-map-panel { min-width: 0; border: 1px solid var(--sa-line); border-radius: 8px; background: #0a211c; overflow: hidden; }
.sa-map-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; padding: 15px 20px; border-bottom: 1px solid #24483b; background: #102a23; }
.sa-map-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin: 0; color: #dce8d7; font-size: 14px; line-height: 1.8; font-weight: 500; }
.sa-map-heading span { color: #9aac97; font-size: 11px; font-weight: 400; letter-spacing: .08em; }
.sa-view-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.sa-view-controls button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px 12px; border: 1px solid #345947; border-radius: 3px; background: #0b231d; color: #b9cdb7; font-size: 12px; line-height: 1.5; }
.sa-view-controls button:hover { background: #1b3d2d; border-color: #7f9967; }
.sa-view-controls button[aria-pressed="true"] { color: #192b1a; background: var(--sa-lime); border-color: var(--sa-lime); font-weight: 600; }
.sa-view-controls [data-reset-region] { background: transparent; color: #d5ddc8; }
.sa-map-stage { position: relative; height: 510px; background: radial-gradient(ellipse at 50% 62%, #1e4b3442 0, #0a211c00 68%); overflow: hidden; }
.sa-map-model { position: absolute; inset: 0 16px 28px; }
.sa-map-top { display: block; position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; filter: drop-shadow(0 0 10px #71dba02a); }
.sa-map-region { fill: #174f36; stroke: #80a969; stroke-width: 1; stroke-linejoin: round; vector-effect: non-scaling-stroke; cursor: pointer; transition: fill .15s ease, stroke .15s ease; }
.sa-map-region:nth-of-type(2n) { fill: #1c5a3d; }
.sa-map-region:nth-of-type(3n) { fill: #1b4836; }
.sa-map-region:hover { fill: #36764d; stroke: #d0df7e; stroke-width: 1.8; }
.sa-map-region[data-selected="true"] { fill: #436d3b; stroke: var(--sa-orange); stroke-width: 2.5; }
.sa-map-region:focus-visible { outline: none; fill: #36764d; stroke: var(--sa-orange); stroke-width: 3; }
.sa-map-region[data-selected="true"]:focus-visible { fill: #567f3e; }
.sa-map-label { fill: #f1f6e5; font-size: 17px; line-height: 1.3; font-weight: 500; text-anchor: middle; paint-order: stroke; stroke: #0a2e22; stroke-width: 4px; stroke-linejoin: round; pointer-events: none; }
.sa-map-point { fill: var(--sa-orange); stroke: #ffe4ba; stroke-width: 1.4; vector-effect: non-scaling-stroke; pointer-events: none; }
.sa-map-leader { fill: none; stroke: #e5c48c; stroke-width: .9; vector-effect: non-scaling-stroke; pointer-events: none; }
.sa-touch-hint { position: absolute; z-index: 2; right: 18px; bottom: 16px; max-width: calc(100% - 36px); display: inline-flex; align-items: center; gap: 7px; margin: 0; padding: 6px 10px; border: 1px solid #35513c; border-radius: 3px; background: #0c221bcc; color: #c2d0b9; font-size: 11px; line-height: 1.7; pointer-events: none; }
.sa-map-compass { position: absolute; top: 18px; right: 22px; display: flex; flex-direction: column; gap: 3px; align-items: center; color: #b8cdb1; font: 11px/1.3 Arial,sans-serif; pointer-events: none; }
.sa-map-compass i { font-size: 22px; font-style: normal; color: #d5dfbe; }
.sa-map-label-group { pointer-events: none; }
.sa-map-label-group[data-selected="true"] .sa-map-label { fill: #ffe4b4; }
.sa-map-caption { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 5px 18px; padding: 14px 20px; border-top: 1px solid #24483b; background: #102a23; font-size: 11px; line-height: 1.85; }
.sa-map-caption p { flex: 1 1 280px; margin: 0; color: #aabea8; }
.sa-map-caption a { display: inline-flex; align-items: center; gap: 5px; min-height: 36px; color: #c7d695; text-decoration: underline; text-underline-offset: 4px; }

.sa-region-panel { display: flex; flex-direction: column; padding: 27px 24px 24px; border: 1px solid var(--sa-line); border-radius: 8px; background: #102a23; }
.sa-panel-kicker { display: flex; align-items: center; gap: 8px; margin: 0 0 26px; color: var(--sa-lime); font-size: 11px; line-height: 1.8; letter-spacing: .12em; font-weight: 600; }
.sa-panel-kicker::before { content: ""; display: block; width: 6px; height: 6px; border: 1px solid #daf1ac; border-radius: 50%; background: var(--sa-lime); box-shadow: 0 0 9px #c3d76640; }
.sa-region-readout { padding-bottom: 24px; border-bottom: 1px solid #34523f; }
.sa-region-readout > span, .sa-region-readout small { display: block; color: #94ae96; font-size: 11px; line-height: 1.8; letter-spacing: .1em; margin-bottom: 10px; }
.sa-region-readout strong { display: block; margin: 0 0 14px; color: #f4f6e9; font-size: 29px; line-height: 1.4; font-weight: 500; letter-spacing: -.02em; }
.sa-region-readout p { margin: 0; color: #b8cbb3; font-size: 13px; line-height: 1.95; }
.sa-region-service { margin-top: 23px; }
.sa-region-service label { display: block; color: #becdb3; font-size: 12px; line-height: 1.8; }
.sa-region-service select { display: block; width: 100%; min-height: 48px; margin-top: 9px; padding: 10px 30px 10px 12px; border: 1px solid #597249; border-radius: 4px; background: #0b211b; color: #eef3df; font-size: 14px; line-height: 1.6; color-scheme: dark; }
.sa-region-service option { background: #102a23; color: #eef3df; }
.sa-region-select { display: block; margin-top: 20px; font-size: 12px; color: #becdb3; line-height: 1.8; }
.sa-region-select select { display: block; width: 100%; min-height: 48px; margin-top: 9px; padding: 10px 30px 10px 12px; border: 1px solid #597249; border-radius: 4px; background: #0b211b; color: #eef3df; font-size: 14px; line-height: 1.6; color-scheme: dark; }
.sa-region-panel { scroll-margin-top: calc(var(--sa-header-height, 142px) + 16px); }
.sa-panel-note { margin: 13px 0 0; color: #a9bda6; font-size: 11px; line-height: 1.8; }
.sa-reset { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; padding: 8px 0; border: 0; background: transparent; color: #d8e4c1; font-size: 12px; }
.sa-new-district > button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 7px 12px; border: 0; background: transparent; color: #d5e5b8; font-size: 12px; text-decoration: underline; text-underline-offset: 5px; }
.sa-new-district > button[aria-pressed="true"] { color: #ffd4af; }
.sa-console { scroll-margin-top: calc(var(--sa-header-height, 142px) + 16px); }
.sa-light .sa-eyebrow { color: var(--sa-green); margin-bottom: 12px; }
.sa-photo-link figure { margin: 0; }
.sa-photo-link figcaption { padding: 9px 15px; margin: 0; background: #fafbf6; border-bottom: 1px solid #e0e6db; font-size: 11px; line-height: 1.8; color: #5d6a5b; }
body.jx-site[data-page="service_area"].sa-map-open { overflow: hidden; }
.sa-map-dialog { width: min(1060px, calc(100vw - 40px)); max-width: none; max-height: calc(100dvh - 40px); padding: 24px; margin: auto; color: #eef3df; background: #0a211c; border: 1px solid #6e8d66; border-radius: 7px; }
.sa-map-dialog:not([open]) { display: none; }
.sa-map-dialog::backdrop { background: #031611cf; }
.sa-dialog-head { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding-bottom: 15px; border-bottom: 1px solid #35543f; }
body.jx-site .sa-page .sa-dialog-head h2 { font-size: 22px; line-height: 1.5; color: #f3f6ee; margin: 0 0 8px; }
.sa-dialog-head p { margin: 0; color: #c1d0b9; font-size: 12px; line-height: 1.8; }
.sa-dialog-head button { min-width: 44px; min-height: 44px; padding: 12px; border: 1px solid #547443; border-radius: 4px; background: transparent; color: #e6f2d2; }
.sa-dialog-canvas { overflow: auto; max-height: calc(100dvh - 220px); overscroll-behavior: contain; scrollbar-color: #54816b #0a211c; }
.sa-dialog-canvas .sa-map-stage { width: 100%; min-width: 900px; height: 680px; background: #0a211c; overflow: visible; }
.sa-dialog-canvas .sa-map-model { inset: 10px 18px 25px; transform: none; }
.sa-dialog-canvas .sa-map-top { transform: none; }
.sa-dialog-canvas .sa-touch-hint { display: none; }
.sa-dialog-canvas .sa-map-label { font-size: 17px; }
.sa-region-details { display: grid; gap: 17px; margin: 23px 0 27px; }
.sa-region-details > div { display: grid; gap: 5px; }
.sa-region-details dt { color: #93ad95; font-size: 11px; line-height: 1.8; }
.sa-region-details dd { margin: 0; color: #d4dfc7; font-size: 13px; line-height: 1.8; }
.sa-reserve, .sa-call { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; width: 100%; padding: 11px 12px; border: 1px solid #8caa62; border-radius: 4px; color: #edf5d8; font-size: 14px; line-height: 1.6; text-align: center; text-decoration: none; }
.sa-reserve { margin-top: auto; background: var(--sa-lime); border-color: var(--sa-lime); color: #14281a; font-weight: 600; }
.sa-reserve:hover { background: #d2e67e; border-color: #d2e67e; }
.sa-call { margin-top: 10px; border-color: #385b43; background: transparent; color: #ccdbc1; }
.sa-call:hover { background: #1d3c2b; border-color: #80965c; }

.sa-districts { padding-top: 34px; }
.sa-section-head { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 10px 28px; margin-bottom: 19px; }
body.jx-site .sa-page .sa-section-head h2 { margin: 0; color: #edf3e1; font-size: 23px; line-height: 1.5; font-weight: 500; letter-spacing: -.01em; }
.sa-section-head p { margin: 0; color: #a9bea4; font-size: 12px; line-height: 1.85; }
.sa-district-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.sa-district-grid button { display: flex; align-items: center; gap: 9px; width: 100%; min-height: 48px; padding: 11px 12px; border: 1px solid #31523d; border-radius: 4px; background: #102a23; color: #d0ddc6; font-size: 13px; line-height: 1.6; text-align: left; }
.sa-district-number { color: #9caf8c; font-size: 10px; font-variant-numeric: tabular-nums; flex-shrink: 0; }
.sa-district-grid button > span:not(.sa-district-number) { flex: 1 1 auto; }
.sa-district-grid button svg { margin-left: auto; color: #9aaf83; width: 14px; height: 14px; flex: 0 0 14px; }
.sa-district-grid button:hover { background: #21442e; border-color: #91ab69; }
.sa-district-grid button[aria-pressed="true"] { background: #c3d766; border-color: #c3d766; color: #14291a; font-weight: 600; }
.sa-district-grid button[aria-pressed="true"] :is(.sa-district-number, svg) { color: #365431; }
.sa-new-district { margin: 17px 0 0; padding-left: 12px; border-left: 2px solid var(--sa-orange); color: #aabea6; font-size: 12px; line-height: 1.95; }

.sa-light { padding: 64px 0 42px; background: var(--sa-paper); color: var(--sa-ink); }
.sa-light-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: 24px 48px; align-items: end; margin-bottom: 28px; }
body.jx-site .sa-page .sa-light-head h2 { margin: 0; color: var(--sa-green); font-size: clamp(27px, 2.8vw, 36px); line-height: 1.45; font-weight: 600; letter-spacing: -.02em; }
.sa-light-head p { margin: 0; max-width: 520px; color: #667166; font-size: 14px; line-height: 1.95; }
.sa-photo-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.sa-photo-grid > a { display: flex; flex-direction: column; min-width: 0; background: #fff; color: var(--sa-ink); border: 1px solid #dce2d4; border-radius: 6px; overflow: hidden; text-decoration: none; }
.sa-photo-grid img { display: block; width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; filter: none; opacity: 1; }
.sa-photo-grid > a > div { position: relative; flex: 1 1 auto; padding: 22px 20px 25px; }
.sa-photo-grid > a > div > span { display: block; margin-bottom: 10px; color: #67785f; font-size: 11px; letter-spacing: .07em; line-height: 1.8; }
body.jx-site .sa-page .sa-photo-grid h3 { margin: 0 28px 10px 0; color: var(--sa-green); font-size: 22px; line-height: 1.5; font-weight: 500; letter-spacing: -.02em; }
.sa-photo-grid p { margin: 0; color: #667166; font-size: 13px; line-height: 1.95; }
.sa-photo-grid > a > div > :is(svg, i):last-child { position: absolute; top: 51px; right: 19px; color: var(--sa-orange); width: 19px; height: 19px; }
.sa-photo-grid > a:hover { border-color: #91ab7d; }
.sa-photo-grid > a:hover h3 { text-decoration: underline; text-underline-offset: 6px; }
.sa-other-services { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 24px; padding: 20px 0 0; font-size: 13px; line-height: 1.8; }
.sa-other-services a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; color: var(--sa-green); text-decoration: none; }
.sa-other-services a:hover { text-decoration: underline; text-underline-offset: 5px; }
.sa-other-services svg { width: 14px; height: 14px; }
.sa-process { margin-top: 54px; padding-top: 39px; border-top: 1px solid #cfd7c5; }
.sa-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px; margin: 0; padding: 0; list-style: none; }
.sa-steps li { padding: 20px 0 0; border-top: 2px solid #c2d4a5; }
.sa-steps li > span { display: block; margin-bottom: 20px; color: var(--sa-orange); font-size: 23px; line-height: 1.2; font-variant-numeric: tabular-nums; font-weight: 400; }
body.jx-site .sa-page .sa-steps h3 { margin: 0 0 12px; color: var(--sa-ink); font-size: 19px; line-height: 1.5; font-weight: 500; }
.sa-steps p { margin: 0; color: #667166; font-size: 13px; line-height: 1.95; }
.sa-final-contact { display: flex; align-items: center; justify-content: space-between; gap: 26px 44px; margin-top: 48px; padding: 28px 0; border-top: 2px solid var(--sa-orange); border-bottom: 1px solid #cfd7c5; }
body.jx-site .sa-page .sa-final-contact h2 { margin: 0 0 8px; color: var(--sa-green); font-size: 26px; font-weight: 600; line-height: 1.5; }
.sa-final-contact p { margin: 0; color: #667166; font-size: 14px; line-height: 1.9; }
.sa-final-contact > div:last-child { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; flex-shrink: 0; }
.sa-final-contact a { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 10px 20px; border: 1px solid var(--sa-green); border-radius: 4px; background: #fff; color: var(--sa-green); font-size: 14px; line-height: 1.6; text-decoration: none; }
.sa-final-contact a:first-child { background: var(--sa-green); color: #fff; }
.sa-final-contact a:hover { background: #edf3e5; }
.sa-final-contact a:first-child:hover { background: #0e4b34; }
.sa-related { display: flex; align-items: center; flex-wrap: wrap; gap: 5px 26px; padding-top: 20px; color: #667166; font-size: 13px; }
.sa-related a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; color: var(--sa-green); text-decoration: none; }
.sa-related a:hover { text-decoration: underline; text-underline-offset: 5px; }
.sa-related strong { font-weight: 500; }

@media (max-width: 1180px) and (min-width: 981px) {
  .sa-wrap { width: calc(100% - 56px); }
  .sa-hero { gap: 36px; }
  .sa-overview { flex-basis: 220px; gap: 20px; }
  .sa-console { grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; }
  .sa-region-panel { padding-inline: 21px; }
  .sa-map-model { inset-inline: 16px; }
  .sa-district-grid { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 7px; }
  .sa-district-grid button { gap: 6px; padding-inline: 9px; font-size: 12px; }
  .sa-photo-grid { gap: 18px; }
  .sa-photo-grid > a > div { padding-inline: 16px; }
  .sa-final-contact { flex-wrap: wrap; }
}

@media (max-width: 980px) {
  .sa-wrap { width: min(800px, calc(100% - 40px)); }
  .sa-hero { align-items: flex-start; gap: 28px; }
  .sa-overview { flex-basis: 190px; gap: 16px; }
  .sa-overview dd { font-size: 36px; }
  .sa-console { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .sa-region-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px 30px; padding: 25px; }
  .sa-panel-kicker { grid-column: 1 / -1; margin-bottom: 0; }
  .sa-region-readout { grid-column: 1; grid-row: 2 / 4; border-bottom: 0; border-right: 1px solid #34523f; padding: 0 26px 0 0; }
  .sa-region-readout strong { font-size: 28px; }
  .sa-region-service { margin-top: 0; }
  .sa-region-select { margin-top: 0; }
  .sa-panel-note { grid-column: 1/-1; margin: 0; }
  .sa-region-details { margin: 0; gap: 13px; }
  .sa-reserve, .sa-call { margin: 0; }
  .sa-map-model { inset-inline: 24px; }
  .sa-district-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .sa-light { padding-top: 48px; }
  .sa-light-head { gap: 20px; }
  .sa-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
  .sa-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .sa-final-contact { flex-wrap: wrap; }
}

@media (max-width: 700px) {
  .sa-hero { flex-direction: column; gap: 27px; }
  .sa-overview { flex-basis: auto; width: min(300px, 100%); }
  .sa-hero > div { width: 100%; }
  .sa-light-head { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .sa-map-stage { height: 420px; }
}

@media (max-width: 600px) {
  body.jx-site[data-page="service_area"] .contact-widget { display: none !important; }
  .sa-wrap { width: calc(100% - 36px); }
  .sa-dark { padding-bottom: 32px; }
  .sa-crumb { padding: 19px 0 14px; gap: 7px 9px; font-size: 11px; }
  .sa-hero { padding: 14px 0 28px; gap: 24px; }
  .sa-eyebrow { margin-bottom: 14px; font-size: 11px; letter-spacing: .07em; }
  body.jx-site .sa-page .sa-hero h1 { font-size: 32px; line-height: 1.4; margin-bottom: 14px; }
  .sa-intro { font-size: 13px; line-height: 1.95; }
  .sa-hero-actions { gap: 9px; margin-top: 18px; }
  .sa-hero-actions a { padding-inline: 14px; font-size: 13px; }
  .sa-overview { width: 250px; gap: 22px; }
  .sa-overview > div { padding-top: 11px; gap: 6px; }
  .sa-overview dd { font-size: 34px; }
  .sa-overview dt { font-size: 11px; }
  .sa-map-panel { border-radius: 5px; }
  .sa-map-toolbar { align-items: flex-start; padding: 13px 13px 12px; gap: 11px; }
  .sa-map-heading { font-size: 13px; width: 100%; }
  .sa-view-controls { width: 100%; gap: 5px; }
  .sa-view-controls button { padding: 8px 10px; font-size: 11px; }
  .sa-view-controls [data-expand-map] { margin-left: auto; }
  .sa-map-stage { height: 350px; }
  .sa-map-model { inset: 23px 8px 46px; }
  .sa-map-label { font-size: 19px; stroke-width: 4.5px; }
  .sa-touch-hint { bottom: 12px; right: 10px; max-width: calc(100% - 20px); font-size: 10px; padding-inline: 8px; }
  .sa-map-caption { padding: 13px; font-size: 11px; gap: 4px; }
  .sa-map-caption a { min-height: 44px; }
  .sa-region-panel { display: flex; padding: 21px 18px; gap: 0; border-radius: 5px; }
  .sa-panel-kicker { margin-bottom: 18px; }
  .sa-region-readout { padding: 0 0 18px; border-right: 0; border-bottom: 1px solid #34523f; }
  .sa-region-readout strong { font-size: 26px; margin-bottom: 11px; }
  .sa-region-readout p { font-size: 12px; }
  .sa-region-service { margin-top: 19px; }
  .sa-region-select { margin-top: 18px; }
  .sa-panel-note { margin-top: 13px; }
  .sa-region-details { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin: 20px 0; }
  .sa-region-details dd { font-size: 12px; }
  .sa-reserve, .sa-call { font-size: 13px; }
  .sa-call { margin-top: 9px; }
  .sa-districts { padding-top: 28px; }
  .sa-section-head { gap: 9px; margin-bottom: 16px; }
  body.jx-site .sa-page .sa-section-head h2 { font-size: 21px; }
  .sa-section-head p { font-size: 11px; }
  .sa-district-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .sa-district-grid button { min-height: 48px; padding-inline: 11px; font-size: 12px; }
  .sa-new-district { font-size: 11px; margin-top: 16px; }
  .sa-light { padding: 38px 0 28px; }
  .sa-light-head { margin-bottom: 22px; }
  body.jx-site .sa-page .sa-light-head h2 { font-size: 26px; }
  .sa-light-head p { font-size: 13px; }
  .sa-photo-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .sa-photo-grid > a > div { padding: 20px 19px 23px; }
  body.jx-site .sa-page .sa-photo-grid h3 { font-size: 22px; }
  .sa-photo-grid > a > div > :is(svg, i):last-child { top: 49px; }
  .sa-other-services { gap: 3px 22px; padding-top: 15px; font-size: 12px; }
  .sa-process { margin-top: 35px; padding-top: 28px; }
  .sa-steps { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .sa-steps li { position: relative; padding: 19px 0 0 44px; }
  .sa-steps li > span { position: absolute; left: 0; top: 19px; margin: 0; font-size: 22px; }
  body.jx-site .sa-page .sa-steps h3 { font-size: 18px; margin-bottom: 9px; }
  .sa-steps p { font-size: 12px; }
  .sa-final-contact { margin-top: 34px; padding: 23px 0; gap: 20px; }
  body.jx-site .sa-page .sa-final-contact h2 { font-size: 23px; }
  .sa-final-contact p { font-size: 13px; }
  .sa-final-contact > div:last-child { width: 100%; flex-shrink: 1; gap: 9px; }
  .sa-final-contact a { flex: 1 1 140px; padding-inline: 11px; font-size: 13px; }
  .sa-related { gap: 2px 21px; font-size: 12px; padding-top: 17px; }
  .sa-related strong { width: 100%; }
  .sa-map-dialog { width: calc(100vw - 24px); padding: 18px 15px; max-height: calc(100dvh - 24px); }
  body.jx-site .sa-page .sa-dialog-head h2 { font-size: 18px; }
  .sa-dialog-canvas { max-height: calc(100dvh - 195px); }
}

@media (prefers-reduced-motion: reduce) {
  .sa-page *, .sa-page *::before, .sa-page *::after { animation: none !important; transition: none !important; }
}

/* The SVG stays flat as a readable fallback; WebGL owns perspective and thickness. */
.sa-map-stage[data-webgl-active="true"] :is(.sa-map-model, .sa-map-compass) { display: none; }
.sa-webgl-canvas { position: absolute; inset: 0; z-index: 1; display: none; width: 100%; height: 100%; cursor: grab; touch-action: none; }
.sa-webgl-canvas:active { cursor: grabbing; }
.sa-map-stage[data-webgl-active="true"] .sa-webgl-canvas { display: block; }
.sa-map-stage[data-webgl-active="false"] .sa-webgl-canvas { display: none !important; pointer-events: none; }
.sa-webgl-labels { display: none; position: absolute; inset: 0; z-index: 2; pointer-events: none; overflow: hidden; }
.sa-map-stage[data-webgl-active="true"] .sa-webgl-labels { display: block; }
.sa-webgl-label, .sa-webgl-north { position: absolute; transform: translate(-50%, -100%); color: #f3f5df; white-space: nowrap; font-size: 12px; font-weight: 500; line-height: 1.7; padding: 1px 5px; border-radius: 2px; background: #082a2294; text-shadow: 0 1px 3px #021b13; }
.sa-webgl-label::after { content: ""; position: absolute; left: 50%; bottom: -6px; width: 4px; height: 4px; border-radius: 50%; background: #e6b676; box-shadow: 0 0 0 2px #173b26; transform: translateX(-50%); }
.sa-webgl-label[data-selected="true"] { background: #482d19; color: #ffe5c0; border: 1px solid #e7aa61; }
.sa-webgl-north { color: #d0d996; font: 12px/1.5 Arial,sans-serif; padding: 3px 6px; letter-spacing: .1em; }
.sa-map-stage .sa-touch-hint { z-index: 3; }
.sa-orbit-controls { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 16px; border-top: 1px solid #24483b; background: #0e2a22; color: #b9cbb1; }
.sa-orbit-controls > span { font-size: 11px; line-height: 1.7; }
.sa-orbit-controls > div { display: flex; align-items: center; gap: 5px; }
.sa-orbit-controls button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 44px; min-height: 44px; padding: 8px 10px; color: #dfebce; background: #15382a; border: 1px solid #3a5e44; border-radius: 3px; }
.sa-orbit-controls button:hover { color: #ffd3a6; border-color: #e77935; background: #274a31; }
.sa-orbit-controls [data-map-light][aria-pressed="true"] { color: #e3edb1; background: #344b23; border-color: #889b4c; }
.sa-orbit-controls button > span { font-size: 11px; }
.sa-dialog-canvas.sa-dialog-webgl { overflow: hidden; max-height: none; }
.sa-dialog-canvas.sa-dialog-webgl .sa-map-stage { width: 100%; min-width: 0; height: min(56dvh, 580px); background: radial-gradient(ellipse at 50% 65%, #24533b70, #0a211c 70%); overflow: hidden; }
.sa-dialog-region { display: flex; align-items: center; flex-wrap: wrap; justify-content: end; gap: 12px; padding-top: 14px; color: #b9cbb1; font-size: 12px; }
.sa-dialog-region select { max-width: 100%; min-height: 44px; padding: 8px 28px 8px 12px; background: #102c22; color: #f0f4df; border: 1px solid #517149; border-radius: 3px; color-scheme: dark; }
@media (max-width: 700px) {
  .sa-map-stage { height: 410px; }
}
@media (max-width: 600px) {
  .sa-map-stage { height: 350px; }
  .sa-webgl-label { font-size: 10px; padding: 0 3px; line-height: 1.7; }
  .sa-orbit-controls { flex-wrap: wrap; justify-content: center; padding: 10px 8px; gap: 8px; }
  .sa-orbit-controls > span { width: 100%; text-align: center; }
  .sa-orbit-controls > div { justify-content: center; flex-wrap: wrap; gap: 5px; }
  .sa-orbit-controls :is([data-map-reset], [data-map-light]) { padding-inline: 6px; gap: 3px; }
  .sa-dialog-canvas.sa-dialog-webgl .sa-map-stage { height: min(44dvh, 400px); }
  .sa-dialog-region { justify-content: start; gap: 7px; }
  .sa-dialog-region select { flex: 1 1 auto; min-width: 0; width: 70%; }
}
@media (max-width: 360px) {
  .sa-orbit-controls > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; }
}

/* ===== styles/site-video-showcase.css ===== */
.jx-video-showcase{width:min(1160px,calc(100% - 40px));margin:80px auto;color:#163d2d;background:#f7f6f0;padding:40px;border:1px solid #d9e1d6;border-radius:6px;box-shadow:0 24px 60px #163d2d0c}
.jx-video-showcase *{box-sizing:border-box}
.jvx-heading{display:grid;grid-template-columns:1fr 1fr;gap:12px 40px;align-items:end;margin-bottom:26px}
.jvx-eyebrow{grid-column:1/-1;font-size:11px;letter-spacing:.24em;color:#155d43;font-weight:700;margin:0}
.jvx-heading h2{font-size:clamp(25px,3vw,38px);line-height:1.3;margin:0;color:#093e2d}
.jvx-description{font-size:14px;line-height:1.9;color:#637268;margin:0}
.jvx-stage{position:relative;background:#101b16;overflow:hidden;border-radius:3px}
.jvx-stage video{width:100%;display:block;aspect-ratio:16/9;object-fit:contain;max-height:72vh}
.jvx-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid #ffffffaa;border-radius:50%;background:#155d43ed;color:white;font-size:26px;cursor:pointer;box-shadow:0 0 0 12px #ffffff22}
.jvx-play[hidden]{display:none}
.jvx-play:hover{background:#093e2d}
.jvx-meta{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #d5ddd1;font-size:12px;letter-spacing:.06em}
.jvx-meta span:last-child{font-variant-numeric:tabular-nums;color:#677369}
.jvx-chapters{display:flex;gap:0;overflow-x:auto;padding-top:20px}
.jvx-chapters button{flex:1;min-width:145px;text-align:left;background:transparent;border:0;border-left:2px solid #e77935;padding:5px 16px;color:#163d2d;cursor:pointer}
.jvx-chapters small{display:block;color:#6a786e;font-size:10px;letter-spacing:.06em;margin-bottom:7px}
.jvx-chapters span{display:block;font-size:13px;line-height:1.6}
.jvx-chapters button:hover{background:#eaf0e6}
.jx-video-showcase button:focus-visible{outline:3px solid #e77935;outline-offset:3px}
@media(max-width:640px){.jx-video-showcase{width:calc(100% - 28px);padding:20px 14px;margin:40px auto}.jvx-heading{grid-template-columns:1fr;gap:10px}.jvx-play{width:54px;height:54px;font-size:20px}.jvx-chapters button{min-width:135px}.jvx-stage video{aspect-ratio:16/9}}

/* ===== styles/detail-refined.css ===== */
/* Editorial refinements scoped to public detail pages. */
.detail-refined{--dr-green:#155d43;--dr-ink:#173f30;--dr-paper:#f7f6f1;--dr-line:#dce4dc}
.detail-refined :where(h1,h2,h3){text-wrap:balance}
.detail-refined :where(p,li,dd){text-wrap:pretty}
.detail-refined :where(a,button,input,select,summary):focus-visible{outline:3px solid #e77935;outline-offset:4px}
.detail-refined .detail-photo{margin:0;min-width:0;position:relative;background:#e9eee7;overflow:hidden;border-radius:6px}
.detail-refined .detail-photo img{width:100%;height:100%;max-height:480px;object-fit:cover;display:block;filter:none}
.detail-refined .detail-photo figcaption{position:absolute;left:0;bottom:0;margin:0;padding:22px 20px 12px;width:100%;font-size:12px;line-height:1.6;letter-spacing:.04em;color:#fff;background:linear-gradient(transparent,#10251cbd)}
.detail-refined .detail-intro-photo{margin-top:26px;width:100%;max-width:740px;aspect-ratio:16/8}
.detail-refined .detail-photo-hero{gap:32px 46px;align-items:center}
.detail-refined .detail-photo-hero>.detail-photo{aspect-ratio:4/3}
.detail-refined .detail-facts{grid-column:1/-1!important;display:block;background:#fff!important;border:1px solid var(--dr-line)!important;border-top:2px solid #e77935!important;padding:22px 28px!important}
.detail-refined .detail-facts :is(dl,ol){display:flex;flex-wrap:wrap;gap:16px 28px}
.detail-refined .detail-facts dl>div{flex:1;min-width:180px;border:0;padding:0}
.detail-refined .detail-facts ol>li{flex:1;min-width:145px}
.detail-refined .detail-facts h2{font-size:20px;margin-bottom:16px}
.detail-refined .cs-hero,.detail-refined .jxlearn-hero{padding-top:32px;padding-bottom:40px}
.detail-refined .cs-hero h1{font-size:clamp(30px,3.25vw,48px);line-height:1.35;letter-spacing:-.035em}
.detail-refined .jxlearn-hero h1{font-size:clamp(30px,3.1vw,44px);line-height:1.35}
.detail-refined .jxlearn-hero h1 span{font-size:clamp(20px,2vw,27px);line-height:1.5;margin-top:12px}
.detail-refined :is(.cs-lead,.jxlearn-lead){font-size:16px;line-height:1.95}
.detail-refined :is(.cs-section,.jxlearn-section,.cx-section,.na-section){padding-block:52px}
.detail-refined :is(.cs-card,.jxlearn-card){border:1px solid var(--dr-line);border-top:3px solid #155d43;border-radius:5px;background:white;box-shadow:0 8px 24px #183c2d05}
.detail-refined :is(.cs-card,.jxlearn-card) h3{font-size:21px;line-height:1.5}
.detail-refined .detail-scene{width:min(1160px,100%);margin:38px auto 0;display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center;padding:28px;background:#f1f3ec;border-radius:6px;text-align:left}
.detail-refined .detail-scene>.detail-photo{aspect-ratio:16/10}
.detail-refined .detail-scene h3{font-size:clamp(24px,2.4vw,32px);color:#123e2d;margin:12px 0;line-height:1.4}
.detail-refined .detail-scene p{font-size:14px;color:#586a60;line-height:1.9;margin:12px 0}
.detail-refined .detail-scene .detail-label{font-size:11px;font-weight:700;letter-spacing:.16em;color:#155d43}
.detail-refined .detail-scene a{display:inline-block;margin-top:10px;padding-bottom:7px;border-bottom:1px solid #b6c6b5;color:#155d43;font-size:13px;font-weight:700}
.detail-refined :is(.na-card,.na-feature,.cx-card){border-radius:6px;box-shadow:0 10px 28px #143a2906}
.detail-refined .na-page img{object-fit:cover}
.detail-refined :is(.ca-section,.sd-section){padding-block:64px}
.detail-refined .faculty-profile{box-shadow:none;border-color:#dce4dc}
.detail-refined .faculty-profile:hover{transform:none}
.detail-refined .faculty-copy{padding:32px}
.detail-refined .faculty-detail-grid{gap:24px}
.detail-refined .faculty-list li{font-size:14px}
.detail-refined .faculty-intro{min-height:280px;padding-block:40px;box-shadow:none}
.detail-refined .faculty-intro h1{font-size:48px}
.detail-refined .faculty-photo{padding:20px}
.detail-refined .faculty-photo-button img{max-height:620px}
.detail-refined .honor-new-hero{min-height:initial}
.detail-refined .history-hero{padding-bottom:60px}
.detail-refined .org-functions{border-radius:6px}
.detail-refined :is(.ep-path,.ep-process){padding-block:56px}
.detail-refined .bn-heading>.detail-photo{max-width:560px;aspect-ratio:16/7}
.detail-refined .fq-hero-copy>.detail-photo{max-width:480px;aspect-ratio:16/7}
.detail-refined .cx-booking-intro>.detail-photo{aspect-ratio:16/8}
.detail-refined .jxlearn-letter-heading>.detail-photo{max-width:560px}
.detail-refined .ec-hero,.detail-refined .lc-hero{min-height:620px}
.detail-refined .cs-hero :is(.cs-actions,.jxlearn-actions){gap:12px}
@media(max-width:800px){
.detail-refined .detail-scene{grid-template-columns:1fr;gap:14px;padding:18px}
.detail-refined .detail-photo-hero{grid-template-columns:1fr!important;gap:24px}
.detail-refined .detail-facts{padding:20px!important}
.detail-refined .detail-photo img{max-height:360px}
.detail-refined :is(.cs-section,.jxlearn-section,.cx-section,.na-section,.ca-section,.sd-section){padding-block:36px}
.detail-refined .faculty-copy{padding:24px}
.detail-refined .faculty-intro h1{font-size:34px}
.detail-refined .ec-hero,.detail-refined .lc-hero{min-height:520px}
.detail-refined .detail-scene h3{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.detail-refined *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ===== styles/nanny-detail.css ===== */
body.jx-site .nanny-page .cs-hero{padding:38px 0 54px;background:#f6f5ef}
body.jx-site .nanny-page .cs-hero-grid{grid-template-columns:1fr .85fr;gap:76px}
body.jx-site .nanny-page h1{font-size:clamp(42px,4.2vw,62px);letter-spacing:.02em;line-height:1.2}
body.jx-site .nanny-page h1 span{display:block;font-size:clamp(22px,2.2vw,31px);line-height:1.6;letter-spacing:0;font-weight:500;margin-top:22px}
body.jx-site .nanny-page .cs-lead{margin-top:20px;max-width:450px;font-size:16px;line-height:2}
body.jx-site .nanny-page .cs-photo{border-radius:100px 8px 8px 8px;overflow:hidden;box-shadow:18px 18px 0 #e9e9dc}
body.jx-site .nanny-page .cs-photo img{height:490px;object-fit:cover;object-position:center 55%}
body.jx-site .nanny-page .cs-photo figcaption{background:#fff;padding:12px 22px;border:0;letter-spacing:.12em}
body.jx-site .nanny-page .nanny-tags{list-style:none;padding:24px 0 0;margin:25px 0 12px;border-top:1px solid #d4dacc;display:flex;gap:24px;flex-wrap:wrap;font-size:13px;color:#155d43}
body.jx-site .nanny-page .nanny-tags li::before{content:'·';color:#d77935;margin-right:8px}
body.jx-site .nanny-page .nanny-hero-note{font-size:12px;color:#778277}
body.jx-site .nanny-page .cs-section{padding:64px 0}
body.jx-site .nanny-page .cs-section-head{gap:40px;grid-template-columns:1fr 1fr}
body.jx-site .nanny-page .cs-items{column-gap:60px}
body.jx-site .nanny-page .cs-number{font-size:24px;font-weight:400;color:#9ba995}
body.jx-site .nanny-page .cs-note{margin-top:20px;background:#f6f5ef;border-left:2px solid #d79a6e}
body.jx-site .nanny-page .nanny-scenes{background:#eaf0e7}
body.jx-site .nanny-page .nanny-scenes-heading{margin-bottom:32px}
body.jx-site .nanny-page .nanny-scenes-heading p{margin-top:14px}
body.jx-site .nanny-page .nanny-scenes-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
body.jx-site .nanny-page .nanny-scenes-grid img{display:block;width:100%;height:280px;object-fit:cover;border-radius:5px}
body.jx-site .nanny-page .nanny-scenes-grid figcaption{padding:22px 0 0}
body.jx-site .nanny-page .nanny-scenes-grid figcaption span{font-size:12px;color:#667d67}
body.jx-site .nanny-page .nanny-scenes-grid h3{margin:8px 0;font-size:22px}
body.jx-site .nanny-page .nanny-scenes-grid p{font-size:13px}
body.jx-site .nanny-page .cs-contact{background:#e9eee4}
@media(max-width:800px){body.jx-site .nanny-page .cs-wrap{width:calc(100% - 40px)}body.jx-site .nanny-page .cs-hero-grid{grid-template-columns:1fr;gap:30px}body.jx-site .nanny-page .cs-hero{padding:28px 0 40px}body.jx-site .nanny-page h1{font-size:40px}body.jx-site .nanny-page h1 span{font-size:22px;margin-top:14px}body.jx-site .nanny-page .cs-photo{border-radius:65px 5px 5px 5px;box-shadow:8px 8px 0 #e9e9dc}body.jx-site .nanny-page .cs-photo img{height:auto;max-height:500px;object-fit:contain}body.jx-site .nanny-page .cs-section{padding:40px 0}body.jx-site .nanny-page .cs-section-head,body.jx-site .nanny-page .nanny-scenes-grid{grid-template-columns:1fr;gap:24px}body.jx-site .nanny-page .nanny-scenes-grid img{height:auto;aspect-ratio:16/10}body.jx-site .nanny-page .nanny-tags{gap:16px}}
body.jx-site .nanny-page .cs-photo img{height:auto;max-height:none;aspect-ratio:761/1000;object-fit:contain}

/* ===== styles/brand-signature.css ===== */
/* Jiaxing signature: natural photographs, editorial rhythm and practical navigation. */
body.jx-signature{--signature-ink:#123d2c;--signature-line:#d9dfd5;--signature-paper:#f8f7f2;--signature-accent:#ce773c}
body.jx-signature :is(.site-header){box-shadow:0 5px 22px #163e2c08;border-bottom:1px solid #e4e8df}
body.jx-signature main :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ce773c;outline-offset:4px}
body.jx-signature main :is(.cs-kicker,.cx-kicker,.hx-label,.jxlearn-eyebrow){letter-spacing:.12em;font-size:12px}
body.jx-signature main :is(.cs-button,.cx-button,.jxlearn-button,.hx-button){border-radius:7px;min-height:50px;transition:background .18s,box-shadow .18s}
body.jx-signature main :is(.cs-button,.cx-button,.jxlearn-button,.hx-button):hover{box-shadow:0 6px 16px #123d2c18}
body.jx-signature :is(.cs-page,.cx-page,.jxlearn-page,.hx-page){background:var(--signature-paper)}
body.jx-signature .cs-page:not(.nanny-page) .cs-hero-grid{gap:52px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
body.jx-signature .cs-page:not(.nanny-page) .cs-hero{padding:46px 0 60px}
body.jx-signature .cs-page:not(.nanny-page) h1{font-size:clamp(32px,3.2vw,46px);line-height:1.42;max-width:580px;letter-spacing:-.025em}
body.jx-signature :is(.cs-hero,.jxlearn-hero,.cx-hero) :is(.cs-photo,.jxlearn-photo,.detail-photo,.cx-photo){border-radius:34px 8px 8px 8px;overflow:hidden;background:#fff;box-shadow:12px 12px 0 #e7ebdf}
body.jx-signature :is(.cs-hero,.jxlearn-hero,.cx-hero) figcaption{padding:12px 16px;background:#fff;color:#526454;font-size:12px;border:0;position:relative;letter-spacing:.03em}
body.jx-signature .detail-photo-hero>.detail-photo{aspect-ratio:auto}
body.jx-signature .detail-photo-hero>.detail-photo img{aspect-ratio:4/3;height:auto;max-height:none}
body.jx-signature .cs-page .cs-section-head{gap:48px}
body.jx-signature .cs-page .cs-number{font-size:24px;font-weight:400;color:#8a9c83}
body.jx-signature .cs-page .cs-item{padding:30px 0}
body.jx-signature .cs-page .cs-note{background:#f4f2e9;border-left:2px solid #ce773c;border-radius:0 8px 8px 0}
body.jx-signature .cs-page .cs-process li{border-top:1px solid #b7c5af;padding:24px 16px 0 0}
body.jx-signature .cs-page .cs-process li>span{font-size:26px;font-weight:400;color:#7e987b}
body.jx-signature .detail-scene{padding:0;background:#edf1e7;overflow:hidden;gap:0;border-radius:8px;margin-top:48px}
body.jx-signature .detail-scene>div{padding:32px 38px}
body.jx-signature .detail-scene>.detail-photo{border-radius:0;align-self:stretch;aspect-ratio:4/3}
body.jx-signature .detail-scene .detail-photo img{min-height:100%;max-height:none}
body.jx-signature .cs-jump{background:#fffdf8}
body.jx-signature .jxlearn-page .jxlearn-hero{gap:48px;padding:46px 0 60px}
body.jx-signature .jxlearn-page .detail-facts{border-radius:8px;padding:28px 32px!important;background:#eef1e8!important;border:0!important;border-left:3px solid #ce773c!important}
body.jx-signature .jxlearn-page .jxlearn-summary{border-top:1px solid #b5c5ac;padding:30px 0}
body.jx-signature .jxlearn-page .jxlearn-number{font-size:24px;font-weight:400;color:#8a9c83}
body.jx-signature .jxlearn-page .jxlearn-curriculum article{padding:30px 0}
body.jx-signature .cx-tabs{gap:8px;border:0;padding:6px;background:#eeeee5;border-radius:9px;width:fit-content;max-width:100%}
body.jx-signature .cx-tabs a{border:0;border-radius:5px;padding:12px 23px;font-size:14px}
body.jx-signature .cx-tabs a[aria-current]{background:white;box-shadow:0 2px 8px #183e2c08;color:#155d43}
body.jx-signature .cx-hero{padding:48px 0 66px;gap:64px;min-height:470px}
body.jx-signature main.cx-page h1{font-size:clamp(32px,3.6vw,50px);line-height:1.4;font-weight:650;letter-spacing:-.025em}
body.jx-signature .cx-hero .cx-photo img{aspect-ratio:4/3;border-radius:0}
body.jx-signature .cx-section{padding:64px 0}
body.jx-signature .cx-courses{border:0;gap:24px}
body.jx-signature .cx-courses article{border:1px solid #dde3d8;padding:0 24px 24px;border-radius:8px;overflow:hidden;background:white;transition:border-color .2s}
body.jx-signature .cx-courses article:hover{border-color:#8aab8a}
body.jx-signature .cx-courses .signature-course-photo{display:block;width:calc(100% + 48px);max-width:none;margin:0 -24px 23px;aspect-ratio:16/10;object-fit:cover;filter:none}
body.jx-signature .cx-courses h3{font-size:19px;min-height:60px;margin-top:10px}
body.jx-signature .cx-courses article>div{border-top:1px solid #e2e7dc;padding-top:18px}
body.jx-signature .cx-guidance{background:#eef2e8;border:0;border-radius:10px;padding:36px;margin-top:16px;gap:50px}
body.jx-signature .cx-form{border:1px solid #d6dfcf;border-top:3px solid #155d43;border-radius:12px;padding:34px;box-shadow:0 16px 45px #1b442b08}
body.jx-signature .cx-field :is(input,textarea,select){border-radius:6px;background:#fafbf7}
body.jx-signature .cx-booking-intro .detail-photo{border-radius:8px;margin-top:24px}
body.jx-signature .cx-arrival{border-left:2px solid #ce773c;border-radius:0 10px 10px 0}
body.jx-signature .hx-team-heading{grid-template-columns:1.05fr 1fr;gap:80px}
body.jx-signature .hx-team-hero>figure{background:#fff;border:1px solid #dce3d5;padding:10px;border-radius:10px}
body.jx-signature .hx-shortcuts{padding:22px 0;border-top:0;border-bottom:1px solid #c8d5c2}
body.jx-signature .hx-service-grid{gap:32px}
body.jx-signature .hx-service{background:#f8f8f3;padding:18px;border:1px solid #e1e6da;border-radius:10px;gap:24px}
body.jx-signature .hx-service img{border-radius:6px}
body.jx-signature .hx-training>figure{padding:12px;background:#fff;border:1px solid #e0e5d8;border-radius:8px}
body.jx-signature .hx-about{gap:70px}
body.jx-signature .hx-school-photos{margin-top:50px;padding-top:40px;border-top:1px solid #dce3d6;gap:42px}
body.jx-signature .hx-course-list a{padding:20px 0}
body.jx-signature .detail-refined :is(.na-card,.na-feature){border-radius:10px;box-shadow:none;border-color:#dce3d6}
body.jx-signature .detail-refined .na-card{transition:border-color .2s}
body.jx-signature .detail-refined .na-card:hover{border-color:#8aa77f}
body.jx-signature .detail-refined .faculty-profile{border-radius:12px;overflow:hidden}
body.jx-signature .detail-refined .faculty-copy{padding:40px}
body.jx-signature .detail-refined .faculty-photo{background:#eef1e9;padding:28px}
body.jx-signature .detail-refined :is(.ca-section,.sd-section){padding-block:72px}
body.jx-signature .detail-refined .fq-item{border-radius:7px}
@media(max-width:800px){
body.jx-signature .cs-page:not(.nanny-page) .cs-hero-grid,body.jx-signature .hx-team-heading{grid-template-columns:1fr;gap:28px}
body.jx-signature .cs-page:not(.nanny-page) .cs-hero{padding:30px 0 40px}
body.jx-signature :is(.cs-hero,.jxlearn-hero,.cx-hero) :is(.cs-photo,.jxlearn-photo,.detail-photo,.cx-photo){box-shadow:6px 6px 0 #e7ebdf;border-radius:22px 6px 6px 6px}
body.jx-signature .detail-scene{grid-template-columns:1fr;margin-top:28px}
body.jx-signature .detail-scene>div{padding:24px}
body.jx-signature .detail-scene>.detail-photo{aspect-ratio:16/10}
body.jx-signature .cx-tabs{width:100%;box-sizing:border-box;justify-content:space-between;gap:0}
body.jx-signature .cx-tabs a{padding:10px 9px;font-size:13px;gap:5px}
body.jx-signature .cx-hero{padding:32px 0 40px;min-height:0;gap:30px}
body.jx-signature .cx-section{padding:40px 0}
body.jx-signature .cx-courses{gap:18px}
body.jx-signature .cx-courses h3{min-height:0}
body.jx-signature .cx-guidance{padding:24px;gap:30px}
body.jx-signature .cx-form{padding:24px 18px}
body.jx-signature .jxlearn-page .jxlearn-hero{padding:32px 0 40px;gap:28px}
body.jx-signature .hx-service{padding:14px;gap:18px}
body.jx-signature .hx-about{gap:28px}
body.jx-signature .hx-school-photos{gap:24px;margin-top:28px;padding-top:28px}
body.jx-signature .detail-refined .faculty-copy{padding:24px}
body.jx-signature .detail-refined .faculty-photo{padding:18px}
body.jx-signature .detail-refined :is(.ca-section,.sd-section){padding-block:42px}
}
@media(prefers-reduced-motion:reduce){body.jx-signature main *{transition:none!important;scroll-behavior:auto!important}}

/* ===== styles/portal-home.css ===== */
body.jx-signature .portal-page{background:#fff}
.portal-hero{background:#edf1e8;position:relative;border-bottom:1px solid #d5ddcf}
.portal-slide{display:grid;grid-template-columns:39% 61%;min-height:560px;max-width:1600px;margin:auto;align-items:center}
.portal-slide[hidden]{display:none}
.portal-slide-copy{padding:60px 36px 84px max(32px,calc((100vw - 1220px)/2));position:relative;z-index:1}
.portal-slide-copy>p{color:#155d43;font-size:15px;letter-spacing:.12em;margin-bottom:22px!important}
body.jx-site .portal-page .portal-slide h1{font-size:clamp(30px,3.1vw,48px);line-height:1.5;color:#093e2d;letter-spacing:-.03em;margin:0 0 20px}
.portal-lead{font-size:15px;line-height:1.9;color:#536653}
.portal-slide-copy>a{display:inline-flex;gap:45px;margin-top:28px;padding:14px 22px;background:#155d43;color:white;border-radius:3px;font-size:14px}
.portal-slide figure{position:relative;margin:0;padding:28px 32px 28px 0;min-width:0}
.portal-slide figure img{width:100%;height:440px;object-fit:contain;background:#e4e9dc;border-radius:0 0 0 60px}
.portal-slide figcaption{position:absolute;bottom:40px;right:45px;background:#fffef3e8;padding:6px 12px;border-radius:3px;font-size:11px;color:#3e5744}
.portal-controls{display:flex;align-items:center;gap:16px;position:absolute;bottom:22px;left:max(32px,calc((100vw - 1220px)/2))}
.portal-controls>div{display:flex;gap:10px}.portal-controls button{border:0;background:transparent;color:#63765e;padding:9px;cursor:pointer;font-size:12px;min-width:38px;min-height:38px}.portal-controls button[aria-pressed=true]{border-bottom:2px solid #e77935;color:#155d43;font-weight:bold}.portal-controls>button{border:1px solid #b7c6ae;border-radius:50%;font-size:17px}
body.jx-signature .portal-page .hx-shortcuts{border-bottom:0;padding:25px 0}
body.jx-signature .portal-page .hx-section{padding:78px 0}
body.jx-signature .portal-page .hx-heading{margin-bottom:36px}
body.jx-signature .portal-page .hx-heading h2{font-size:36px;font-weight:700}
body.jx-signature .portal-page .hx-about{gap:65px}
body.jx-signature .portal-page .hx-about img{border-radius:10px;object-fit:cover}
body.jx-signature .portal-page .hx-school-photos{margin-top:35px;padding-top:30px}
body.jx-signature .portal-page .hx-school-photos>figure{max-height:300px;overflow:hidden}
body.jx-signature .portal-page .hx-school-photos img{max-height:245px;object-fit:contain}
.portal-news{background:#f3f5ef}.portal-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.portal-news-card{background:white;border:1px solid #e1e7dc;color:#173c2b;text-decoration:none}.portal-news-card img{height:215px;object-fit:cover;width:100%}.portal-news-card>div{padding:24px}.portal-news-card time{color:#7b8975;font-size:13px}.portal-news-card h3{font-size:18px!important;line-height:1.7!important;margin:14px 0 25px!important;min-height:62px}.portal-news-card span{font-size:13px;color:#155d43}
body.jx-signature .portal-page .hx-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
body.jx-signature .portal-page .hx-service{display:block;padding:0;border:0;border-radius:0;background:#f5f6f1}
body.jx-signature .portal-page .hx-service img{aspect-ratio:16/11;object-fit:cover;border-radius:0}
body.jx-signature .portal-page .hx-service>div{padding:24px}
body.jx-signature .portal-page #skill-training{background:#eff3e8}
@media(max-width:850px){.portal-slide{grid-template-columns:1fr;min-height:0}.portal-slide-copy{padding:35px 24px 20px}.portal-slide figure{padding:0 24px 70px}.portal-slide figure img{height:auto;max-height:380px;border-radius:4px;object-fit:contain}.portal-slide figcaption{bottom:82px;right:34px}.portal-controls{left:24px;bottom:16px}body.jx-site .portal-page .portal-slide h1{font-size:32px}.portal-slide-copy>a{margin-top:20px}.portal-slide-copy>p{margin-bottom:12px!important}.portal-news-grid{grid-template-columns:1fr}body.jx-signature .portal-page .hx-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}body.jx-signature .portal-page .hx-service>div{padding:16px}body.jx-signature .portal-page .hx-service h3{font-size:18px}body.jx-signature .portal-page .hx-section{padding:44px 0}body.jx-signature .portal-page .hx-heading h2{font-size:28px}body.jx-signature .portal-page .hx-about{gap:24px}.portal-news-card img{height:auto;aspect-ratio:16/10}.portal-news-card h3{min-height:0}}

/* ===== styles/brand-refine.css ===== */
/* ============================================================================
   家兴官网 · 视觉精修层（2026-10-28）
   只做表现层微调：字体节奏、间距体系、按钮 / 卡片 / 表单的状态与圆角、
   首屏细节、动效与焦点态。不改变品牌色、信息结构与任何业务逻辑。
   加载顺序：最后加载，覆盖之前各层样式。
   ========================================================================== */

body.jx-site {
  --pr-ink: #093e2d;
  --pr-ink-2: #173328;
  --pr-green: #155d43;
  --pr-green-deep: #0c4a35;
  --pr-orange: #d96f2e;
  --pr-lime: #b8ca4b;
  --pr-paper: #f7f6f0;
  --pr-surface: #ffffff;
  --pr-line: #dbe3d6;
  --pr-line-soft: #e7ede1;
  --pr-muted: #56685c;
  --pr-muted-2: #7a8a7e;
  --pr-radius-s: 8px;
  --pr-radius: 12px;
  --pr-radius-l: 18px;
  --pr-shadow-1: 0 1px 2px rgba(9, 62, 45, 0.05);
  --pr-shadow-2: 0 20px 46px -28px rgba(9, 62, 45, 0.42);
  --pr-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* ---------------------------------------------------------------------------
   1. 排版节奏
   ------------------------------------------------------------------------- */
body.jx-site main :is(h1) {
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.03em;
  text-wrap: balance;
}

body.jx-site main :is(h2) {
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

body.jx-site main :is(h3) {
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.01em;
}

body.jx-site main p {
  text-wrap: pretty;
}

/* 版心略微收紧，长行更易读 */
body.jx-site .hx-wrap { width: min(1180px, calc(100% - 72px)); }
body.jx-site .cx-wrap { width: min(1200px, calc(100% - 80px)); }
body.jx-site .ca-wrap { width: min(1180px, calc(100% - 80px)); }

/* 章节垂直节奏统一 */
body.jx-site :is(.hx-section, .ca-section, .cx-section, .cs-section, .sd-section, .childcare-section) {
  padding-block: clamp(56px, 6.2vw, 96px);
}

body.jx-site :is(.hx-heading, .ca-heading, .cx-section-head, .sd-section-head) {
  margin-bottom: clamp(28px, 3vw, 44px);
  align-items: end;
}

body.jx-site :is(.hx-heading, .ca-heading, .cx-section-head) > p {
  max-width: 440px;
  color: var(--pr-muted);
  font-size: 15px;
  line-height: 1.85;
}

/* 小标签：统一字重与字距 */
body.jx-site :is(.hx-label, .ca-label, .cs-kicker, .sd-kicker, .cx-kicker, .childcare-eyebrow, .jxlearn-eyebrow, .na-eyebrow, .wx-eyebrow) {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--pr-green);
}

/* 面包屑 */
body.jx-site :is(.ca-crumb, .na-crumb, .cx-breadcrumb, .sd-breadcrumb, .wx-crumb, .cs-crumb) {
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--pr-muted-2);
}

/* ---------------------------------------------------------------------------
   2. 按钮与文字链接
   ------------------------------------------------------------------------- */
body.jx-site :is(.hx-button, .ca-button, .cx-button, .cs-button, .sd-action,
  .jxlearn-button, .childcare-btn, .mt-actions a, .mt-actions button,
  .nr-actions a, .nr-actions button, .lc-hero button, .lc-cta button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: var(--pr-radius-s);
  border: 1px solid var(--pr-green);
  background: var(--pr-green);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: 0 8px 18px -12px rgba(9, 62, 45, 0.55);
  transition: background-color 0.22s ease, border-color 0.22s ease,
    transform 0.24s var(--pr-ease), box-shadow 0.24s var(--pr-ease);
}

body.jx-site :is(.hx-button, .ca-button, .cx-button, .cs-button, .sd-action,
  .jxlearn-button, .childcare-btn, .mt-actions a, .nr-actions a):hover {
  background: var(--pr-green-deep);
  border-color: var(--pr-green-deep);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 14px 30px -16px rgba(9, 62, 45, 0.6);
}

/* 次要按钮 */
body.jx-site :is(.hx-outline, .ca-button-outline, .sd-action-outline, .secondary) {
  background: transparent;
  color: var(--pr-green);
  border-color: rgba(21, 93, 67, 0.34);
  box-shadow: none;
}

body.jx-site :is(.hx-outline, .ca-button-outline, .sd-action-outline, .secondary):hover {
  background: #eef3e8;
  border-color: var(--pr-green);
  color: var(--pr-green-deep);
  box-shadow: none;
}

/* 文字链接：统一箭头的位移反馈 */
body.jx-site :is(.hx-text-link, .ca-text-link, .cx-text-link, .cs-text-link,
  .sd-text-link, .na-read, .hx-links a, .na-nav a, .cx-more a) {
  color: var(--pr-green);
  font-weight: 600;
  letter-spacing: 0.005em;
  transition: color 0.18s ease;
}

body.jx-site :is(.hx-text-link, .ca-text-link, .cx-text-link, .cs-text-link,
  .sd-text-link, .na-read, .hx-links a, .na-nav a, .cx-more a):hover {
  color: var(--pr-orange);
}

/* ---------------------------------------------------------------------------
   3. 页头
   ------------------------------------------------------------------------- */
body.jx-site .site-header {
  box-shadow: 0 1px 0 rgba(9, 62, 45, 0.07), 0 14px 34px -28px rgba(9, 62, 45, 0.45);
}

body.jx-site .site-nav > .nav-item > a {
  position: relative;
}

body.jx-site .site-nav > .nav-item > a::after {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  bottom: 12px;
  height: 2px;
  background: var(--pr-orange);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.26s var(--pr-ease);
}

body.jx-site .site-nav > .nav-item > a:hover::after,
body.jx-site .site-nav > .nav-item.active > a::after,
body.jx-site .site-nav > .nav-item:focus-within > a::after {
  transform: scaleX(1);
}

body.jx-site .mega-menu {
  border-radius: 0 0 var(--pr-radius) var(--pr-radius);
  box-shadow: 0 26px 60px -34px rgba(9, 62, 45, 0.5);
}

body.jx-site .mega-menu-links a {
  transition: background-color 0.18s ease, color 0.18s ease;
}

/* ---------------------------------------------------------------------------
   4. 首页 · 首屏
   ------------------------------------------------------------------------- */
body.jx-site .portal-hero {
  background: linear-gradient(180deg, #f0f4e9 0%, #edf1e8 62%, #e9eee1 100%);
  border-bottom: 1px solid var(--pr-line-soft);
}

body.jx-site .portal-slide {
  min-height: clamp(520px, 42vw, 600px);
}

body.jx-site .portal-slide-copy > p {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--pr-green);
}

body.jx-site .portal-slide-copy > p::before {
  content: "";
  width: 20px;
  height: 2px;
  background: var(--pr-orange);
}

body.jx-site .portal-page .portal-slide :is(h1, .portal-slide-title) {
  font-size: clamp(36px, 3.7vw, 56px);
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -0.032em;
  color: var(--pr-ink);
  margin: 0 0 22px;
}

body.jx-site .portal-lead {
  font-size: 16px;
  line-height: 1.85;
  color: var(--pr-muted);
  max-width: 380px;
}

body.jx-site .portal-slide-copy > a {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  min-width: 190px;
  margin-top: 30px;
  padding: 14px 24px;
  border-radius: var(--pr-radius-s);
  background: var(--pr-green);
  color: #fff;
  font-size: 14.5px;
  font-weight: 600;
  transition: background-color 0.22s ease, transform 0.24s var(--pr-ease),
    box-shadow 0.24s var(--pr-ease);
}

body.jx-site .portal-slide-copy > a span {
  transition: transform 0.24s var(--pr-ease);
}

body.jx-site .portal-slide-copy > a:hover {
  background: var(--pr-green-deep);
  transform: translateY(-1px);
  box-shadow: 0 14px 30px -18px rgba(9, 62, 45, 0.65);
}

body.jx-site .portal-slide-copy > a:hover span {
  transform: translate(2px, -2px);
}

body.jx-site .portal-slide figure img {
  border-radius: 0 0 0 44px;
  box-shadow: 0 34px 70px -48px rgba(9, 62, 45, 0.55);
}

body.jx-site .portal-slide figcaption {
  background: rgba(255, 254, 243, 0.94);
  padding: 7px 13px;
  border-radius: 4px;
  font-size: 11px;
  letter-spacing: 0.04em;
  box-shadow: 0 8px 20px -14px rgba(9, 62, 45, 0.5);
}

body.jx-site .portal-controls button {
  min-width: 40px;
  min-height: 40px;
  border-radius: 50%;
  transition: color 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

body.jx-site .portal-controls button:hover {
  color: var(--pr-orange);
}

body.jx-site .portal-controls > button {
  border: 1px solid rgba(21, 93, 67, 0.3);
  background: rgba(255, 255, 255, 0.5);
}

body.jx-site .portal-controls > button:hover {
  background: #fff;
  border-color: var(--pr-green);
}

body.jx-site .portal-controls button[aria-pressed="true"] {
  border-bottom: 0;
  position: relative;
  color: var(--pr-ink);
  font-weight: 700;
}

body.jx-site .portal-controls button[aria-pressed="true"]::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 2px;
  height: 2px;
  background: var(--pr-orange);
}

/* 常用入口 */
body.jx-site .portal-page .hx-shortcuts {
  padding: 22px 0;
  border-bottom: 1px solid var(--pr-line-soft);
}

body.jx-site .hx-shortcuts a {
  font-weight: 600;
  color: var(--pr-green);
  transition: color 0.18s ease;
}

body.jx-site .hx-shortcuts a:hover {
  color: var(--pr-orange);
  text-decoration: none;
}

body.jx-site .hx-shortcuts a span {
  transition: transform 0.22s var(--pr-ease);
}

body.jx-site .hx-shortcuts a:hover span {
  transform: translate(2px, -2px);
}

/* ---------------------------------------------------------------------------
   5. 首页 · 内容区块
   ------------------------------------------------------------------------- */
body.jx-site .hx-page :is(h2) {
  letter-spacing: -0.025em;
}

body.jx-site .hx-about {
  gap: clamp(32px, 4vw, 60px);
  align-items: center;
}

body.jx-site .hx-about figure img,
body.jx-site .hx-school-photos figure img,
body.jx-site .hx-training figure img {
  border-radius: var(--pr-radius-s);
}

body.jx-site .hx-page figcaption {
  margin-top: 12px;
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--pr-muted-2);
}

/* 新闻卡片 */
body.jx-site .portal-news {
  background: #f3f5ee;
  border-block: 1px solid var(--pr-line-soft);
}

body.jx-site .portal-news-grid {
  gap: 24px;
}

body.jx-site .portal-news-card {
  border: 1px solid var(--pr-line-soft);
  border-radius: var(--pr-radius);
  overflow: hidden;
  background: #fff;
  box-shadow: var(--pr-shadow-1);
  transition: transform 0.28s var(--pr-ease), box-shadow 0.28s var(--pr-ease),
    border-color 0.28s ease;
}

body.jx-site .portal-news-card:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.22);
  box-shadow: var(--pr-shadow-2);
}

body.jx-site .portal-news-card > img {
  transition: transform 0.6s var(--pr-ease);
}

body.jx-site .portal-news-card:hover > img {
  transform: scale(1.035);
}

body.jx-site .portal-news-card > div {
  padding: 22px 22px 24px;
}

body.jx-site .portal-news-card time {
  font-size: 12px;
  letter-spacing: 0.08em;
  color: var(--pr-muted-2);
}

body.jx-site .portal-news-card h3 {
  font-weight: 600;
  letter-spacing: -0.015em;
  margin: 12px 0 20px !important;
}

body.jx-site .portal-news-card span {
  font-size: 13px;
  font-weight: 600;
  color: var(--pr-green);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

body.jx-site .portal-news-card:hover span {
  color: var(--pr-orange);
}

/* 服务卡片 */
body.jx-site .portal-page .hx-service-grid {
  gap: 24px;
}

body.jx-site .portal-page .hx-service {
  background: #fff;
  border: 1px solid var(--pr-line-soft);
  border-radius: 14px;
  overflow: hidden;
  padding: 0;
  box-shadow: var(--pr-shadow-1);
  transition: transform 0.28s var(--pr-ease), box-shadow 0.28s var(--pr-ease),
    border-color 0.28s ease;
}

body.jx-site .portal-page .hx-service:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.22);
  box-shadow: var(--pr-shadow-2);
}

body.jx-site .portal-page .hx-service img {
  border-radius: 0;
  transition: transform 0.6s var(--pr-ease);
}

body.jx-site .portal-page .hx-service:hover img {
  transform: scale(1.04);
}

body.jx-site .portal-page .hx-service > div {
  padding: 22px 22px 24px;
}

body.jx-site .portal-page .hx-service h3 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 6px;
}

body.jx-site .portal-page .hx-service p {
  font-size: 14px;
  line-height: 1.8;
  color: var(--pr-muted);
}

/* 课程列表 */
body.jx-site .hx-course-list a {
  padding: 19px 0;
  border-bottom: 1px solid var(--pr-line-soft);
  transition: background-color 0.2s ease;
}

body.jx-site .hx-course-list strong {
  font-size: 16.5px;
  font-weight: 600;
  letter-spacing: -0.01em;
  transition: color 0.18s ease;
}

body.jx-site .hx-course-list a:hover strong {
  color: var(--pr-orange);
  text-decoration: none;
}

body.jx-site .hx-course-list span {
  font-size: 13px;
  color: var(--pr-muted-2);
}

/* 更多服务链接行 */
body.jx-site .hx-links {
  border-top: 1px solid var(--pr-line-soft);
  margin-top: 36px;
  padding-top: 24px;
  gap: 12px 30px;
}

body.jx-site .hx-links a {
  font-size: 14px;
  font-weight: 600;
}

/* 底部 CTA 面板 */
body.jx-site .hx-bottom {
  background: #f2f5ea;
  border-top: 0;
  border-radius: var(--pr-radius-l);
  padding: clamp(28px, 4vw, 48px);
}

body.jx-site .hx-bottom-links a {
  border-bottom: 1px solid rgba(21, 93, 67, 0.16);
  transition: color 0.18s ease, border-color 0.18s ease;
}

body.jx-site .hx-bottom-links a:hover {
  color: var(--pr-orange);
  border-color: rgba(217, 111, 46, 0.35);
}

/* ---------------------------------------------------------------------------
   6. 通用内容页（走进家兴 / 服务详情 / 课程）
   ------------------------------------------------------------------------- */
body.jx-site :is(.ca-hero-photo img, .cs-photo img, .sd-photo img,
  .ca-gallery img, .ca-learning-gallery img, .ca-records img,
  .sd-gallery img, .detail-photo img, .jxlearn-photo img) {
  border-radius: var(--pr-radius);
}

body.jx-site :is(.ca-hero, .cs-hero, .sd-hero, .cx-hero, .jxlearn-hero) figure,
body.jx-site :is(.ca-hero-photo, .cs-photo, .sd-photo, .jxlearn-photo) {
  box-shadow: 0 30px 60px -46px rgba(9, 62, 45, 0.5);
}

body.jx-site :is(.ca-gallery, .ca-learning-gallery, .sd-gallery) figcaption {
  font-size: 12px;
  color: var(--pr-muted-2);
  margin-top: 10px;
}

/* 数字编号更克制 */
body.jx-site :is(.ca-number, .cs-number, .cx-number, .sd-number) {
  font-weight: 600;
  letter-spacing: 0.06em;
}

/* 历史节点 */
body.jx-site .ca-history :is(h3, strong, .ca-year) {
  letter-spacing: -0.01em;
}

/* 课程页 · 深色区块 */
body.jx-site .practice-band {
  padding-block: clamp(48px, 5vw, 76px);
}

body.jx-site :is(.growth-card, .skill-card, .support-card) {
  border-radius: var(--pr-radius);
  transition: border-color 0.24s ease, transform 0.24s var(--pr-ease),
    box-shadow 0.24s var(--pr-ease);
}

body.jx-site :is(.growth-card, .skill-card, .support-card):hover {
  transform: translateY(-3px);
  box-shadow: var(--pr-shadow-2);
}

/* ---------------------------------------------------------------------------
   7. 资讯列表 / 文章
   ------------------------------------------------------------------------- */
body.jx-site .na-toolbar input,
body.jx-site .na-toolbar select {
  border-radius: var(--pr-radius-s);
  border-color: var(--pr-line);
  min-height: 44px;
}

body.jx-site .na-item {
  transition: background-color 0.2s ease;
}

body.jx-site .na-item:hover {
  background: #f7f8f1;
}

body.jx-site .na-date {
  font-size: 13px;
  letter-spacing: 0.04em;
  color: var(--pr-muted-2);
}

body.jx-site .na-tag {
  font-size: 11.5px;
  letter-spacing: 0.04em;
  border-radius: 999px;
}

body.jx-site .na-item h3 {
  font-weight: 600;
  letter-spacing: -0.015em;
}

body.jx-site .na-summary {
  font-size: 14.5px;
  line-height: 1.85;
  color: var(--pr-muted);
}

body.jx-site .na-photo img {
  border-radius: var(--pr-radius-s);
}

body.jx-site .na-year {
  font-weight: 700;
  letter-spacing: -0.04em;
  color: rgba(21, 93, 67, 0.28);
}

/* 公众号文章 */
body.jx-site .wx-article-wrap {
  width: min(820px, calc(100% - 48px));
}

body.jx-site .wx-article-heading h1 {
  font-size: clamp(28px, 2.6vw, 38px);
  line-height: 1.35;
}

body.jx-site .wx-meta {
  color: var(--pr-muted-2);
  font-size: 12.5px;
  letter-spacing: 0.04em;
}

body.jx-site .wx-intro {
  font-size: 17px;
  line-height: 1.9;
  color: #334c3d;
}

body.jx-site .wx-article-body {
  font-size: 16.5px;
  line-height: 1.95;
  color: #2c4436;
}

body.jx-site .wx-article-body :is(p, li) {
  margin-bottom: 1.1em;
}

body.jx-site .wx-article-body :is(h2, h3) {
  margin-top: 1.6em;
}

body.jx-site .wx-article-body img {
  border-radius: var(--pr-radius-s);
}

/* ---------------------------------------------------------------------------
   8. 表单 / 弹窗
   ------------------------------------------------------------------------- */
body.jx-site .lead-modal-card {
  border-radius: var(--pr-radius-l);
  padding: 36px;
  box-shadow: 0 40px 90px -40px rgba(9, 62, 45, 0.6);
}

body.jx-site .lead-modal::backdrop {
  background: rgba(9, 36, 26, 0.55);
  backdrop-filter: blur(3px);
}

body.jx-site .lead-modal-card :is(input, select, textarea) {
  border-radius: var(--pr-radius-s);
  border-color: var(--pr-line);
  min-height: 46px;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.jx-site .lead-modal-card :is(input, select, textarea):focus {
  border-color: var(--pr-green);
  box-shadow: 0 0 0 3px rgba(21, 93, 67, 0.14);
  outline: none;
}

body.jx-site .lead-modal-card .lead-modal-close {
  border-radius: 50%;
  transition: background-color 0.18s ease, transform 0.18s ease;
}

body.jx-site .lead-modal-card .lead-modal-close:hover {
  background: #eef3e8;
  transform: rotate(90deg);
}

body.jx-site .cx-field :is(input, select, textarea) {
  border-radius: var(--pr-radius-s);
  border-color: var(--pr-line);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

body.jx-site .cx-field :is(input, select, textarea):focus {
  border-color: var(--pr-green);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(21, 93, 67, 0.13);
  outline: none;
}

body.jx-site .cx-form {
  border-radius: var(--pr-radius);
  border-color: var(--pr-line);
}

body.jx-site .cx-arrival {
  border-radius: 0 var(--pr-radius) var(--pr-radius) 0;
}

/* ---------------------------------------------------------------------------
   9. 页脚
   ------------------------------------------------------------------------- */
body.jx-site .site-footer {
  padding-top: 12px;
}

body.jx-site .site-footer .footer-inner {
  padding-top: clamp(40px, 4vw, 56px);
}

body.jx-site .site-footer :is(h3) {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.62);
  margin-bottom: 18px;
}

body.jx-site .site-footer a {
  font-size: 14.5px;
  line-height: 2.15;
  color: rgba(255, 255, 255, 0.74);
  transition: color 0.18s ease;
}

body.jx-site .site-footer a:hover {
  color: #fff;
}

body.jx-site .site-footer .copyright {
  margin-top: 32px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 12.5px;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.5);
}

/* 侧边快捷联系 */
body.jx-site .contact-widget :is(a, button) {
  border-radius: 10px 0 0 10px;
  transition: background-color 0.2s ease, transform 0.2s var(--pr-ease);
}

body.jx-site .contact-widget :is(a, button):hover {
  transform: translateX(-2px);
}

/* ---------------------------------------------------------------------------
   10. 动效（遵循 prefers-reduced-motion）
   ------------------------------------------------------------------------- */
@media (prefers-reduced-motion: no-preference) {
  @keyframes pr-rise {
    from { opacity: 0; transform: translateY(14px); }
    to { opacity: 1; transform: none; }
  }

  body.jx-site .portal-slide:not([hidden]) .portal-slide-copy > * {
    animation: pr-rise 0.7s var(--pr-ease) both;
  }

  body.jx-site .portal-slide:not([hidden]) .portal-slide-copy > *:nth-child(1) { animation-delay: 0.02s; }
  body.jx-site .portal-slide:not([hidden]) .portal-slide-copy > *:nth-child(2) { animation-delay: 0.08s; }
  body.jx-site .portal-slide:not([hidden]) .portal-slide-copy > *:nth-child(3) { animation-delay: 0.16s; }
  body.jx-site .portal-slide:not([hidden]) .portal-slide-copy > *:nth-child(4) { animation-delay: 0.24s; }
}

/* ---------------------------------------------------------------------------
   11. 二次精修：让"小图块"和筛选卡片看起来是刻意设计，而不是留白事故
   ------------------------------------------------------------------------- */
body.jx-site [id] {
  scroll-margin-top: 118px;
}

body.jx-site :is(.hx-heading, .ca-heading, .cx-section-head, .sd-section-head) h2 {
  font-size: clamp(27px, 2.7vw, 37px);
}

/* 首页：信息公开区左侧的小图，改成带边框的说明卡 */
body.jx-site .hx-school-photos {
  align-items: start;
}

body.jx-site .hx-school-photos > figure {
  margin: 0;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--pr-line-soft);
  border-radius: 14px;
  box-shadow: var(--pr-shadow-1);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.jx-site .hx-school-photos > figure img {
  border-radius: 8px;
}

body.jx-site .hx-school-photos > figure figcaption {
  margin-top: 12px;
}

/* 关于页：首屏照片加"签名式"白框 + 浅色偏移底 */
body.jx-site .ca-hero-photo {
  background: #fff;
  padding: 12px;
  border: 1px solid var(--pr-line-soft);
  border-radius: 16px;
  box-shadow: 14px 14px 0 #e9eee1;
}

body.jx-site .ca-hero-photo img {
  border-radius: 8px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

body.jx-site .ca-hero-photo figcaption {
  margin-top: 12px;
}

/* 报名页：课程卡片独立成卡 */
body.jx-site .cx-courses {
  border: 0;
  gap: 22px;
}

body.jx-site .cx-courses article {
  border: 1px solid var(--pr-line-soft);
  border-radius: var(--pr-radius);
  box-shadow: var(--pr-shadow-1);
  transition: transform 0.28s var(--pr-ease), box-shadow 0.28s var(--pr-ease),
    border-color 0.28s ease;
}

body.jx-site .cx-courses article:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.22);
  box-shadow: var(--pr-shadow-2);
}

/* FAQ 条目 */
body.jx-site .fq-item {
  border-radius: 10px;
}

@media (max-width: 800px) {
  body.jx-site .portal-page .hx-school-photos {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body.jx-site .portal-page .hx-school-photos > figure {
    padding: 10px;
  }

  body.jx-site .ca-hero-photo {
    box-shadow: 8px 8px 0 #e9eee1;
  }
}

/* ---------------------------------------------------------------------------
   12. 响应式
   ------------------------------------------------------------------------- */
@media (max-width: 1080px) {
  body.jx-site .hx-wrap { width: calc(100% - 48px); }
  body.jx-site .cx-wrap { width: calc(100% - 48px); }
}

@media (max-width: 820px) {
  body.jx-site .hx-wrap { width: calc(100% - 36px); }
  body.jx-site .cx-wrap { width: calc(100% - 36px); }
  body.jx-site .ca-wrap { width: calc(100% - 36px); }

  body.jx-site .portal-slide-copy > p {
    font-size: 12px;
  }

  body.jx-site .portal-page .portal-slide :is(h1, .portal-slide-title) {
    font-size: clamp(30px, 7.4vw, 38px);
    line-height: 1.22;
  }

  body.jx-site .portal-lead {
    font-size: 15px;
  }

  body.jx-site .portal-slide-copy > a {
    min-width: 0;
    gap: 28px;
    padding: 13px 20px;
  }

  body.jx-site .portal-page .hx-service > div,
  body.jx-site .portal-news-card > div {
    padding: 18px 18px 20px;
  }

  body.jx-site .hx-bottom {
    border-radius: var(--pr-radius);
  }

  body.jx-site .portal-controls button {
    min-width: 36px;
    min-height: 36px;
  }

  body.jx-site .portal-controls button[aria-pressed="true"]::after {
    left: 6px;
    right: 6px;
  }

  body.jx-site :is(.hx-heading, .ca-heading, .cx-section-head) > p {
    margin-top: 14px;
  }
}

@media (max-width: 520px) {
  body.jx-site .portal-slide-copy > p {
    letter-spacing: 0.12em;
  }

  body.jx-site .hx-shortcuts {
    grid-template-columns: 1fr 1fr;
  }

  body.jx-site .portal-page .hx-service h3 {
    font-size: 18px;
  }

  body.jx-site .lead-modal-card {
    padding: 26px 20px;
  }
}

/* ============================================================================
   13. 沉浸式首屏（首页）：整幅大图 + 深绿渐变 + 白色排版
   ========================================================================== */
body.jx-site {
  --pr-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
}

body.jx-site .portal-hero {
  position: relative;
  background: #0b3a2b;
  border-bottom: 0;
}

body.jx-site .portal-slide {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  position: relative;
  max-width: none;
  margin: 0;
  min-height: 620px;
  min-height: max(620px, calc(100svh - var(--pr-header-h, 122px)));
  overflow: hidden;
}

body.jx-site .portal-slide[hidden] {
  display: none;
}

body.jx-site .portal-slide figure {
  position: absolute;
  inset: 0;
  z-index: 0;
  margin: 0;
  padding: 0;
  min-width: 0;
}

body.jx-site .portal-slide figure img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center 34%;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  filter: saturate(1.02) contrast(1.02);
}

body.jx-site .portal-slide figure::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 32, 23, 0.38) 0%, rgba(5, 32, 23, 0) 26%, rgba(5, 32, 23, 0.16) 60%, rgba(5, 32, 23, 0.9) 100%),
    linear-gradient(90deg, rgba(5, 32, 23, 0.96) 0%, rgba(5, 32, 23, 0.86) 34%, rgba(5, 32, 23, 0.5) 60%, rgba(5, 32, 23, 0.2) 100%);
}

body.jx-site .portal-slide-copy {
  grid-column: 1;
  width: 100%;
  max-width: none;
  min-width: 0;
  position: relative;
  z-index: 2;
  padding-top: clamp(80px, 12vh, 148px);
  padding-right: 24px;
  padding-bottom: clamp(96px, 13vh, 160px);
  padding-left: max(28px, calc((100vw - 1220px) / 2));
}

body.jx-site .portal-slide-copy > p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 12.5px;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
}

body.jx-site .portal-slide-copy > p::before {
  background: #f2a36b;
}

body.jx-site .portal-page .portal-slide :is(h1, .portal-slide-title) {
  color: #fff;
  font-size: clamp(38px, 4.2vw, 58px);
  line-height: 1.14;
  letter-spacing: -0.03em;
  margin: 0 0 22px;
  max-width: 640px;
  text-shadow: 0 2px 26px rgba(0, 0, 0, 0.22);
}

body.jx-site .portal-lead {
  color: rgba(255, 255, 255, 0.86);
  font-size: 16.5px;
  line-height: 1.85;
  max-width: 440px;
  text-shadow: 0 1px 14px rgba(0, 0, 0, 0.45);
}

body.jx-site .portal-slide-copy > a {
  margin-top: 32px;
  gap: 46px;
  min-width: 0;
  padding: 15px 26px;
  background: #f7f4ea;
  color: #0b3a2b;
  font-weight: 700;
  box-shadow: 0 16px 38px -20px rgba(0, 0, 0, 0.65);
}

body.jx-site .portal-slide-copy > a:hover {
  background: #fff;
  color: #0b3a2b;
  transform: translateY(-2px);
  box-shadow: 0 22px 44px -20px rgba(0, 0, 0, 0.7);
}

body.jx-site .portal-slide figcaption {
  left: auto;
  right: max(28px, calc((100vw - 1220px) / 2));
  bottom: 30px;
  z-index: 3;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.92);
  font-size: 11.5px;
  letter-spacing: 0.05em;
  box-shadow: none;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

body.jx-site .portal-controls {
  left: max(28px, calc((100vw - 1220px) / 2));
  bottom: 32px;
  gap: 14px;
  z-index: 4;
}

body.jx-site .portal-controls button {
  color: rgba(255, 255, 255, 0.62);
}

body.jx-site .portal-controls button:hover {
  color: #fff;
}

body.jx-site .portal-controls > button {
  border: 1px solid rgba(255, 255, 255, 0.42);
  background: rgba(255, 255, 255, 0.06);
}

body.jx-site .portal-controls > button:hover {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.16);
}

body.jx-site .portal-controls button[aria-pressed="true"] {
  color: #fff;
  font-weight: 700;
}

body.jx-site .portal-controls button[aria-pressed="true"]::after {
  background: #f2a36b;
}

body.jx-site .portal-hero::before {
  content: "SCROLL";
  position: absolute;
  left: 50%;
  bottom: 66px;
  z-index: 4;
  transform: translateX(-50%);
  color: rgba(255, 255, 255, 0.55);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.32em;
  pointer-events: none;
}

body.jx-site .portal-hero::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 38px;
  width: 1px;
  height: 20px;
  z-index: 4;
  transform: translateX(-50%);
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0));
  animation: pr-scroll-cue 1.9s var(--pr-ease) infinite;
}

@keyframes pr-scroll-cue {
  0% { opacity: 0; transform: translate(-50%, -6px); }
  35% { opacity: 1; }
  100% { opacity: 0; transform: translate(-50%, 10px); }
}

@media (prefers-reduced-motion: no-preference) {
  body.jx-site .portal-slide:not([hidden]) figure img {
    animation: pr-kenburns 26s ease-out both;
  }

  @keyframes pr-kenburns {
    from { transform: scale(1.02); }
    to { transform: scale(1.09); }
  }
}

@media (max-width: 820px) {
  body.jx-site .portal-slide {
    grid-template-columns: minmax(0, 1fr);
    align-items: flex-end;
    min-height: 560px;
    min-height: max(560px, calc(100svh - var(--pr-header-h, 124px)));
  }

  body.jx-site .portal-slide-copy {
    grid-column: 1;
    align-self: end;
  }

  body.jx-site .portal-slide figure::after {
    background:
      linear-gradient(180deg, rgba(5, 32, 23, 0.18) 0%, rgba(5, 32, 23, 0.34) 34%, rgba(5, 32, 23, 0.74) 62%, rgba(5, 32, 23, 0.95) 100%);
  }

  body.jx-site .portal-slide-copy {
    max-width: none;
    padding: 118px 22px 96px;
  }
  body.jx-site .portal-page .portal-slide :is(h1, .portal-slide-title) {
    font-size: clamp(30px, 7.4vw, 38px);
    line-height: 1.2;
    max-width: none;
  }

  body.jx-site .portal-lead {
    font-size: 14.5px;
    max-width: none;
  }

  body.jx-site .portal-slide-copy > a {
    margin-top: 22px;
    padding: 13px 20px;
    gap: 26px;
  }

  body.jx-site .portal-slide figcaption,
  body.jx-site .portal-hero::before,
  body.jx-site .portal-hero::after {
    display: none;
  }

  body.jx-site .portal-controls {
    left: 22px;
    bottom: 20px;
    gap: 8px;
  }
}

/* ============================================================================
   14. 滚动入场 + 深色区块颗粒质感
   ========================================================================== */
body.jx-site .pr-rv {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.4s ease, transform 0.4s var(--pr-ease);
}

body.jx-site .pr-rv.pr-in {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  body.jx-site .pr-rv {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

body.jx-site .site-footer {
  background-image: var(--pr-noise);
}

body.jx-site .practice-band {
  background-image: var(--pr-noise);
}

/* 收尾细节：细线分隔、图注与深色区文字 */
body.jx-site .hx-about figcaption,
body.jx-site .hx-training figcaption {
  letter-spacing: 0.03em;
}

/* 人像裁切：卡片默认居中裁切会把头部裁掉，统一改为偏上取景 */
body.jx-site :is(.hx-service img, .portal-news-card img, .na-photo img,
  .cx-courses article img, .signature-course-photo,
  .ca-gallery img, .sd-gallery img, .faculty-photo img) {
  object-position: center 16%;
}

/* 首页「信息公开」小图：图片铺满卡片，不再出现上下白边
   （portal-home.css 里同位置规则用了 3 层类选择器，这里必须同层级覆盖） */
body.jx-site .portal-page .hx-school-photos > figure {
  padding: 0;
  max-height: none;
  overflow: hidden;
}

body.jx-site .portal-page .hx-school-photos > figure img {
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center 38%;
  border-radius: 0;
}

body.jx-site .portal-page .hx-school-photos > figure figcaption {
  margin: 0;
  padding: 12px 16px;
  border-top: 1px solid var(--pr-line-soft);
  background: #fff;
}

/* 新闻卡片：竖幅海报不再被横向裁掉，改为竖版图框 */
body.jx-site .portal-news-card > img {
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center 18%;
  background: #eef1e8;
}

/* 纯海报类（长图/信息图）完整显示，不裁文字 */
body.jx-site .portal-news-card.is-poster > img {
  object-fit: contain;
  object-position: center;
  background: #edf1e8;
  padding: 12px;
}

body.jx-site .cx-tabs a {
  transition: color 0.18s ease, border-color 0.18s ease;
}

body.jx-site .cx-tabs a:hover {
  color: var(--pr-orange);
}

/* ============================================================================
   15. 就业渠道首屏：整幅大图 + 深绿遮罩（大屏）
   ========================================================================== */
body.jx-site .ep-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(72px, 8vw, 120px) 0;
  background: #0b3a2b;
  color: #fff;
}

body.jx-site .ep-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 32, 23, 0.35) 0%, rgba(5, 32, 23, 0) 36%, rgba(5, 32, 23, 0.62) 100%),
    linear-gradient(90deg, rgba(5, 32, 23, 0.97) 0%, rgba(5, 32, 23, 0.9) 34%, rgba(5, 32, 23, 0.55) 62%, rgba(5, 32, 23, 0.28) 100%);
}

body.jx-site .ep-hero .ep-hero-inner {
  position: static;
  min-height: clamp(500px, 58vh, 620px);
  align-items: center;
}

body.jx-site .ep-hero .ep-hero-inner > div:first-child {
  position: static;
  z-index: auto;
  min-width: 0;
}

body.jx-site .ep-hero .ep-hero-inner > div:first-child > :not(figure) {
  position: relative;
  z-index: 3;
}

body.jx-site .ep-hero .ep-side {
  position: relative;
  z-index: 3;
  min-width: 0;
  padding: 24px 26px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

body.jx-site .ep-hero .detail-intro-photo {
  position: absolute;
  inset: 0;
  left: 0;
  top: 0;
  z-index: 1;
  margin: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
}

body.jx-site .ep-hero .detail-intro-photo img {
  width: 100%;
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center 30%;
  border-radius: 0;
  filter: saturate(1.02) contrast(1.02);
}

body.jx-site .ep-hero .detail-intro-photo figcaption {
  position: absolute;
  right: max(24px, calc((100vw - 1280px) / 2));
  bottom: 26px;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.9);
  font-size: 11.5px;
  letter-spacing: 0.05em;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

body.jx-site .ep-hero .ep-kicker {
  color: #b8ca4b;
}

body.jx-site .ep-hero h1 {
  color: #fff;
  text-shadow: 0 2px 26px rgba(0, 0, 0, 0.24);
}

body.jx-site .ep-hero h1 span {
  color: #b8ca4b;
}

body.jx-site .ep-hero p {
  color: rgba(255, 255, 255, 0.82);
}

body.jx-site .ep-hero .ep-side {
  border-left: 1px solid rgba(255, 255, 255, 0.32);
}

body.jx-site .ep-hero .ep-side small {
  color: rgba(255, 255, 255, 0.66);
}

/* ============================================================================
   16. 通用场景记录 / 内容区块的字号与节奏
   ========================================================================== */
body.jx-site .detail-scene h3 {
  font-size: clamp(26px, 2.4vw, 34px);
  line-height: 1.35;
}

body.jx-site .detail-scene p {
  font-size: 15.5px;
  line-height: 1.9;
}

body.jx-site .detail-scene .detail-label {
  font-size: 12px;
  letter-spacing: 0.14em;
}

body.jx-site .detail-scene > div > a {
  font-size: 14.5px;
  font-weight: 600;
}

/* ============================================================================
   17. 长期照护师详情页：补充内容区块
   ========================================================================== */
body.jx-site :is(.lc-audience, .lc-modules, .lc-scene, .lc-faq) {
  padding-block: clamp(64px, 7vw, 96px);
}

body.jx-site .lc-audience,
body.jx-site .lc-scene {
  background: #f6f5ef;
}

body.jx-site .lc-modules,
body.jx-site .lc-faq {
  background: #fff;
}

body.jx-site :is(.lc-audience, .lc-modules, .lc-scene, .lc-faq) > .container > p {
  color: #28734f;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
  margin: 0 0 12px;
}

body.jx-site :is(.lc-audience, .lc-modules, .lc-scene, .lc-faq) > .container > h2 {
  margin: 0 0 clamp(30px, 3vw, 42px);
  color: #093e2d;
  font-size: clamp(30px, 3.4vw, 46px);
  line-height: 1.2;
}

body.jx-site .lc-people,
body.jx-site .lc-module-grid,
body.jx-site .lc-scene-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body.jx-site .lc-people article,
body.jx-site .lc-module-grid article {
  background: #fff;
  border: 1px solid #dbe4d9;
  border-radius: 12px;
  padding: 26px;
  transition: transform 0.28s var(--pr-ease), box-shadow 0.28s var(--pr-ease), border-color 0.24s ease;
}

body.jx-site .lc-people article:hover,
body.jx-site .lc-module-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.24);
  box-shadow: var(--pr-shadow-2);
}

body.jx-site .lc-people b,
body.jx-site .lc-module-grid b {
  display: inline-block;
  margin-bottom: 14px;
  color: #28734f;
  font-size: 22px;
  font-weight: 700;
}

body.jx-site .lc-people h3,
body.jx-site .lc-module-grid h3 {
  margin: 0 0 10px;
  color: #093e2d;
  font-size: 20px;
  line-height: 1.4;
}

body.jx-site .lc-people p,
body.jx-site .lc-module-grid p {
  margin: 0;
  color: #52655a;
  font-size: 14.5px;
  line-height: 1.85;
}

body.jx-site .lc-scene-grid figure {
  margin: 0;
}

body.jx-site .lc-scene-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 10px;
  display: block;
}

body.jx-site .lc-scene-grid figcaption {
  margin-top: 10px;
  font-size: 12px;
  color: var(--pr-muted-2);
  letter-spacing: 0.02em;
}

body.jx-site .lc-faq details {
  border-bottom: 1px solid #dbe4d9;
  padding: 20px 0;
}

body.jx-site .lc-faq details:first-of-type {
  border-top: 1px solid #dbe4d9;
}

body.jx-site .lc-faq summary {
  cursor: pointer;
  font-size: 17px;
  font-weight: 600;
  color: #093e2d;
  list-style: none;
}

body.jx-site .lc-faq summary::-webkit-details-marker {
  display: none;
}

body.jx-site .lc-faq summary::after {
  content: "+";
  float: right;
  color: #28734f;
  font-size: 20px;
  line-height: 1;
}

body.jx-site .lc-faq details[open] summary::after {
  content: "−";
}

body.jx-site .lc-faq p {
  margin: 14px 0 0;
  color: #52655a;
  font-size: 15px;
  line-height: 1.9;
}

/* 修复「按岗位任务」列表：说明文字应占右侧整列 */
body.jx-site .lc-process li {
  grid-template-columns: 60px minmax(0, 1fr);
  row-gap: 6px;
}

body.jx-site .lc-process li > span {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: start;
}

body.jx-site .lc-process li strong {
  grid-column: 2;
  grid-row: 1;
}

body.jx-site .lc-process li em {
  grid-column: 2;
  grid-row: 2;
  width: auto;
  font-style: normal;
}

@media (max-width: 900px) {
  body.jx-site .ep-hero {
    padding: 56px 0 72px;
  }

  body.jx-site .ep-hero h1 {
    font-size: clamp(32px, 7vw, 44px);
  }

  body.jx-site .ep-hero .detail-intro-photo figcaption {
    display: none;
  }

  body.jx-site .lc-people,
  body.jx-site .lc-module-grid,
  body.jx-site .lc-scene-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

/* ============================================================================
   18. 设计令牌收敛（UI 诊断提示词 P0）
   只保留一套语义化变量；历史 --pr-* / --jx-* 全部映射到这里，
   后续新增样式只允许使用 --color-* / --radius-* / --shadow-* / --space-*。
   ========================================================================== */


body.jx-site {
  --pr-ink: var(--color-ink);
  --pr-ink-2: #173328;
  --pr-green: var(--color-primary);
  --pr-green-deep: var(--color-primary-deep);
  --pr-orange: var(--color-accent);
  --pr-paper: var(--color-paper);
  --pr-surface: var(--color-surface);
  --pr-line: var(--color-line);
  --pr-line-soft: var(--color-line-soft);
  --pr-muted: var(--color-muted);
  --pr-muted-2: var(--color-muted-2);
  --pr-radius-s: var(--radius-s);
  --pr-radius: var(--radius-m);
  --pr-radius-l: var(--radius-l);
  --pr-shadow-1: var(--shadow-soft);
  --pr-shadow-2: var(--shadow-lift);
}

/* ============================================================================
   19. 顶栏：双标语合并 + 预约入口（P1）
   ========================================================================== */
body.jx-site .topbar-inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 18px;
}

body.jx-site .topbar-inner > span:first-child {
  margin-right: auto;
  max-width: 62ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.jx-site .topbar-book {
  flex: none;
  padding: 5px 14px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

body.jx-site .topbar-book:hover {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #fff;
}

@media (max-width: 820px) {
  body.jx-site .topbar-inner > span:first-child {
    display: none;
  }

  body.jx-site .topbar-inner {
    justify-content: space-between;
    gap: 10px;
  }
}

/* ============================================================================
   20. Mega menu 双列（二级每列 ≤6 项）（P1）
   ========================================================================== */
@media (min-width: 1100px) {
  body.jx-site .mega-menu-inner {
    min-width: 460px;
  }

  body.jx-site .mega-menu-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px 26px;
  }
}

/* ============================================================================
   21. 首屏双 CTA（P1）
   ========================================================================== */
body.jx-site .portal-cta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: var(--space-4);
}

body.jx-site .portal-cta-main,
body.jx-site .portal-cta-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 52px;
  padding: 14px 26px;
  border-radius: var(--radius-s);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: background-color 0.22s ease, color 0.22s ease,
    border-color 0.22s ease, transform 0.24s var(--pr-ease), box-shadow 0.24s var(--pr-ease);
}

body.jx-site .portal-cta-main {
  border: 1px solid transparent;
  background: #f7f4ea;
  color: #0b3a2b;
  cursor: pointer;
  box-shadow: 0 16px 38px -20px rgba(0, 0, 0, 0.65);
}

body.jx-site .portal-cta-main:hover {
  background: #fff;
  color: #0b3a2b;
  transform: translateY(-2px);
  box-shadow: 0 22px 44px -20px rgba(0, 0, 0, 0.7);
}

body.jx-site .portal-cta-ghost {
  border: 1px solid rgba(255, 255, 255, 0.48);
  background: transparent;
  color: #fff;
}

body.jx-site .portal-cta-ghost:hover {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

body.jx-site .portal-cta-main span,
body.jx-site .portal-cta-ghost span {
  transition: transform 0.24s var(--pr-ease);
}

body.jx-site .portal-cta-main:hover span,
body.jx-site .portal-cta-ghost:hover span {
  transform: translate(2px, -2px);
}

@media (max-width: 820px) {
  body.jx-site .portal-cta-row {
    gap: 10px;
    margin-top: 22px;
  }

  body.jx-site .portal-cta-main,
  body.jx-site .portal-cta-ghost {
    flex: 1 1 auto;
    justify-content: center;
    min-height: 46px;
    padding: 12px 18px;
    font-size: 14px;
  }
}

/* ===== styles/jx-components.css ===== */
/* ============================================================================
   统一组件 API（.jx-*）
   新页面 / 新模块一律使用这里的组件与令牌；旧板块类（hx-/ca-/cs-…）保留兼容，
   按板块逐步迁移，迁移完即可删除对应旧样式。
   依赖：jx.css 顶部 tokens（--color-* / --radius-* / --shadow-* / --space-*）。
   ========================================================================== */

.jx-container {
  width: min(1180px, calc(100% - 72px));
  margin-inline: auto;
}

.jx-section {
  padding-block: clamp(56px, 6.2vw, 96px);
}

.jx-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 var(--space-2);
  color: var(--color-primary);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.jx-eyebrow::before {
  content: "";
  width: 20px;
  height: 2px;
  background: var(--color-accent);
}

.jx-title {
  margin: 0;
  color: var(--color-ink);
  font-size: clamp(28px, 2.8vw, 38px);
  line-height: 1.26;
  letter-spacing: -0.025em;
}

.jx-text {
  color: var(--color-muted);
  font-size: 16px;
  line-height: 1.75;
}

.jx-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 26px;
  border: 1px solid transparent;
  border-radius: var(--radius-s);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.22s ease, border-color 0.22s ease,
    color 0.22s ease, transform 0.24s ease, box-shadow 0.24s ease;
}

.jx-btn--primary {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  box-shadow: 0 8px 18px -12px rgba(9, 62, 45, 0.55);
}

.jx-btn--primary:hover {
  background: var(--color-primary-deep);
  border-color: var(--color-primary-deep);
  color: #fff;
  transform: translateY(-1px);
}

.jx-btn--ghost {
  background: transparent;
  border-color: rgba(21, 93, 67, 0.34);
  color: var(--color-primary);
}

.jx-btn--ghost:hover {
  background: #eef3e8;
  border-color: var(--color-primary);
  color: var(--color-primary-deep);
}

.jx-btn--accent {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #fff;
}

.jx-btn--accent:hover {
  background: #c05f24;
  border-color: #c05f24;
  color: #fff;
  transform: translateY(-1px);
}

.jx-card {
  overflow: hidden;
  border: 1px solid var(--color-line-soft);
  border-radius: var(--radius-m);
  background: var(--color-surface);
  box-shadow: var(--shadow-soft);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.24s ease;
}

.jx-card:hover {
  transform: translateY(-4px);
  border-color: rgba(21, 93, 67, 0.22);
  box-shadow: var(--shadow-lift);
}

.jx-card__media {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  background: var(--color-line-soft);
}

.jx-card__body {
  padding: var(--space-3);
}

.jx-card__title {
  margin: 0 0 var(--space-1);
  color: var(--color-ink);
  font-size: 20px;
  line-height: 1.4;
}

.jx-card__text {
  margin: 0;
  color: var(--color-muted);
  font-size: 15px;
  line-height: 1.75;
}

.jx-grid {
  display: grid;
  gap: var(--space-3);
}

.jx-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.jx-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.jx-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.jx-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-primary);
  font-size: 14.5px;
  font-weight: 600;
  text-decoration: none;
}

.jx-link:hover {
  color: var(--color-accent);
}

:where(.jx-btn, .jx-link, .jx-card a):focus-visible {
  outline: 3px solid var(--color-accent);
  outline-offset: 4px;
}

@media (max-width: 1080px) {
  .jx-container { width: calc(100% - 48px); }
  .jx-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .jx-container { width: calc(100% - 36px); }
  .jx-section { padding-block: 56px; }
  .jx-grid--2,
  .jx-grid--3,
  .jx-grid--4 { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  .jx-card,
  .jx-btn { transition: none; }
}
