/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/6de62c022f06f17c.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/f44285dd7b4f96f8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/3cea4047dd955e64.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/35749bec1f53639f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/33c71188b08f5f87.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(../fonts/c2789104223d80ae.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/74276ca9731a5891.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/b6548330f42a55cc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/1193e553c652e86b.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/61f3d372952e3dd5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */


/* fallback */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  src: url(../fonts/material-symbols-subset.woff2) format('woff2');
}

.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

/* Metric-adjusted Georgia for the mixed normal/italic opening headline. */
@font-face {
 font-family:'Newsreader Fallback'; src:local('Georgia'); font-style:normal; font-weight:300 600;
 size-adjust:99.1645%; ascent-override:74.1193%; descent-override:26.7233%; line-gap-override:0%;
}
@font-face {
 font-family:'Newsreader Fallback'; src:local('Georgia Italic'); font-style:italic; font-weight:300 600;
 size-adjust:91.2806%; ascent-override:80.5209%; descent-override:29.0314%; line-gap-override:0%;
}
/* Keep the lead's line count stable while the critical sans-serif font loads. */
@font-face {
 font-family:'Jakarta Fallback'; src:local('Arial'); font-style:normal; font-weight:400 500;
 size-adjust:105.7355%; ascent-override:98.1694%; descent-override:20.9958%; line-gap-override:0%;
}
@font-face {
 font-family:'Jakarta Fallback'; src:local('Arial Bold'); font-style:normal; font-weight:600 700;
 size-adjust:105.7355%; ascent-override:98.1694%; descent-override:20.9958%; line-gap-override:0%;
}
/* Narrow headlines use a smaller optical size in Newsreader. */
@font-face {
 font-family:'Newsreader Fallback Small'; src:local('Georgia'); font-style:normal; font-weight:300 600;
 size-adjust:99.1645%; ascent-override:74.1193%; descent-override:26.7233%; line-gap-override:0%;
}
@font-face {
 font-family:'Newsreader Fallback Small'; src:local('Georgia Italic'); font-style:italic; font-weight:300 600;
 size-adjust:90%; ascent-override:81.6667%; descent-override:29.4444%; line-gap-override:0%;
}

/* Exact common leading rules, in their original order. */
*, ::before, ::after{--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:rgb(59 130 246 / 0.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:rgb(59 130 246 / 0.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: }
*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
::after,::before{--tw-content:""}

/* Shared utilities with unchanged cascade dependencies. */
.mx-auto{margin-left:auto;margin-right:auto}
.cursor-pointer{cursor:pointer}
.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}
.items-start{align-items:flex-start}
.items-center{align-items:center}
.gap-1{gap:0.25rem}
.gap-1\.5{gap:0.375rem}
.self-start{align-self:flex-start}
.overflow-hidden{overflow:hidden}
.rounded{border-radius:0.125rem}
.fill-current{fill:currentColor}
.uppercase{text-transform:uppercase}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}
.transition-colors{transition-property:color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}

:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";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;padding:0}
legend{padding:0}
menu,ol,ul{list-style:none;margin:0;padding:0}
dialog{padding:0}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
[role=button],button{cursor:pointer}
:disabled{cursor:default}
audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}
img,video{max-width:100%;height:auto}
[hidden]:where(:not([hidden=until-found])){display:none}
.relative{position:relative}
.my-space-sm{margin-top:0.5rem;margin-bottom:0.5rem}
.mb-1{margin-bottom:0.25rem}
.mb-space-lg{margin-bottom:1.75rem}
.mb-space-md{margin-bottom:1rem}
.mb-space-sm{margin-bottom:0.5rem}
.mb-space-xl{margin-bottom:3rem}
.mb-space-xs{margin-bottom:0.25rem}
.mt-2{margin-top:0.5rem}
.mt-auto{margin-top:auto}
.mt-space-lg{margin-top:1.75rem}
.mt-space-md{margin-top:1rem}
.mt-space-xl{margin-top:3rem}
.block{display:block}
.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.hidden{display:none}
.aspect-\[3\/2\]{aspect-ratio:3/2}
.h-1\.5{height:0.375rem}
.h-4{height:1rem}
.h-\[1px\]{height:1px}
.h-full{height:100%}
.w-1\.5{width:0.375rem}
.w-4{width:1rem}
.w-8{width:2rem}
.w-full{width:100%}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-7xl{max-width:80rem}
.flex-1{flex:1 1 0%}
.shrink-0{flex-shrink:0}
.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.items-stretch{align-items:stretch}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-2{gap:0.5rem}
.gap-gutter{gap:1.5rem}
.gap-space-lg{gap:1.75rem}
.gap-space-md{gap:1rem}
.gap-space-sm{gap:0.5rem}
.gap-space-xl{gap:3rem}
.gap-space-xs{gap:0.25rem}
.gap-x-space-md{column-gap:1rem}
.gap-y-1{row-gap:0.25rem}
.rounded-full{border-radius:0.75rem}
.rounded-lg{border-radius:0.25rem}
.rounded-xl{border-radius:0.5rem}
.border{border-width:1px}
.border-b{border-bottom-width:1px}
.border-t{border-top-width:1px}
.border-\[\#2d4b3e\]{--tw-border-opacity:1;border-color:rgb(45 75 62 / var(--tw-border-opacity, 1))}
.border-outline-variant\/20{border-color:rgb(193 200 195 / 0.2)}
.border-outline-variant\/30{border-color:rgb(193 200 195 / 0.3)}
.bg-\[\#1B3327\]{--tw-bg-opacity:1;background-color:rgb(27 51 39 / var(--tw-bg-opacity, 1))}
.bg-\[\#223d2f\]{--tw-bg-opacity:1;background-color:rgb(34 61 47 / var(--tw-bg-opacity, 1))}
.bg-\[\#264536\]{--tw-bg-opacity:1;background-color:rgb(38 69 54 / var(--tw-bg-opacity, 1))}
.bg-\[\#c8ead8\]{--tw-bg-opacity:1;background-color:rgb(200 234 216 / var(--tw-bg-opacity, 1))}
.bg-\[\#fef8f4\]{--tw-bg-opacity:1;background-color:rgb(254 248 244 / var(--tw-bg-opacity, 1))}
.bg-primary{--tw-bg-opacity:1;background-color:rgb(22 52 40 / var(--tw-bg-opacity, 1))}
.bg-primary-fixed{--tw-bg-opacity:1;background-color:rgb(200 234 216 / var(--tw-bg-opacity, 1))}
.bg-secondary{--tw-bg-opacity:1;background-color:rgb(148 73 49 / var(--tw-bg-opacity, 1))}
.bg-surface{--tw-bg-opacity:1;background-color:rgb(254 248 244 / var(--tw-bg-opacity, 1))}
.bg-surface-container{--tw-bg-opacity:1;background-color:rgb(242 237 233 / var(--tw-bg-opacity, 1))}
.bg-surface-container-high{--tw-bg-opacity:1;background-color:rgb(236 231 227 / var(--tw-bg-opacity, 1))}
.bg-surface-container-highest{--tw-bg-opacity:1;background-color:rgb(230 226 222 / var(--tw-bg-opacity, 1))}
.bg-surface-container-low{--tw-bg-opacity:1;background-color:rgb(248 243 239 / var(--tw-bg-opacity, 1))}
.bg-surface-dim{--tw-bg-opacity:1;background-color:rgb(222 217 213 / var(--tw-bg-opacity, 1))}
.object-cover{object-fit:cover}
.p-3{padding:0.75rem}
.p-space-lg{padding:1.75rem}
.p-space-md{padding:1rem}
.px-2{padding-left:0.5rem;padding-right:0.5rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-margin-mobile{padding-left:1.25rem;padding-right:1.25rem}
.px-space-lg{padding-left:1.75rem;padding-right:1.75rem}
.px-space-md{padding-left:1rem;padding-right:1rem}
.px-space-sm{padding-left:0.5rem;padding-right:0.5rem}
.px-space-xl{padding-left:3rem;padding-right:3rem}
.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.py-space-lg{padding-top:1.75rem;padding-bottom:1.75rem}
.py-space-sm{padding-top:0.5rem;padding-bottom:0.5rem}
.py-space-xl{padding-top:3rem;padding-bottom:3rem}
.pb-space-lg{padding-bottom:1.75rem}
.pb-space-md{padding-bottom:1rem}
.pb-space-xl{padding-bottom:3rem}
.pt-1{padding-top:0.25rem}
.pt-2{padding-top:0.5rem}
.pt-space-lg{padding-top:1.75rem}
.pt-space-md{padding-top:1rem}
.pt-space-sm{padding-top:0.5rem}
.pt-space-xl{padding-top:3rem}
.pt-space-xs{padding-top:0.25rem}
.text-left{text-align:left}
.text-center{text-align:center}
.font-body-lg{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-body-md{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-body-sm{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-display{font-family:Newsreader}
.font-headline-lg{font-family:Newsreader}
.font-headline-md{font-family:Newsreader}
.font-headline-sm{font-family:Newsreader}
.font-label-annotation{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-label-lg{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-label-md{font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif}
.font-serif{font-family:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif}
.text-\[20px\]{font-size:20px}
.text-body-lg{font-size:18px;line-height:28px;font-weight:400}
.text-body-md{font-size:15px;line-height:24px;font-weight:400}
.text-body-sm{font-size:13px;line-height:20px;font-weight:400}
.text-headline-lg{font-size:40px;line-height:48px;letter-spacing:-0.015em;font-weight:400}
.text-headline-md{font-size:28px;line-height:36px;font-weight:400}
.text-headline-sm{font-size:22px;line-height:30px;font-weight:500}
.text-label-annotation{font-size:11px;line-height:14px;letter-spacing:0.08em;font-weight:500}
.text-label-lg{font-size:14px;line-height:20px;letter-spacing:0.02em;font-weight:600}
.text-label-md{font-size:12px;line-height:16px;letter-spacing:0.04em;font-weight:600}
.font-medium{font-weight:500}
.font-normal{font-weight:400}
.font-semibold{font-weight:600}
.italic{font-style:italic}
.leading-relaxed{line-height:1.625}
.leading-snug{line-height:1.375}
.leading-tight{line-height:1.25}
.tracking-tight{letter-spacing:-0.025em}
.tracking-wider{letter-spacing:0.05em}
.tracking-widest{letter-spacing:0.1em}
.text-\[\#163428\]{--tw-text-opacity:1;color:rgb(22 52 40 / var(--tw-text-opacity, 1))}
.text-\[\#adb5b0\]{--tw-text-opacity:1;color:rgb(173 181 176 / var(--tw-text-opacity, 1))}
.text-\[\#c0c8c4\]{--tw-text-opacity:1;color:rgb(192 200 196 / var(--tw-text-opacity, 1))}
.text-\[\#c8ead8\]{--tw-text-opacity:1;color:rgb(200 234 216 / var(--tw-text-opacity, 1))}
.text-\[\#fef8f4\]{--tw-text-opacity:1;color:rgb(254 248 244 / var(--tw-text-opacity, 1))}
.text-\[\#ffb59f\]{--tw-text-opacity:1;color:rgb(255 181 159 / var(--tw-text-opacity, 1))}
.text-\[\#ffdbd0\]{--tw-text-opacity:1;color:rgb(255 219 208 / var(--tw-text-opacity, 1))}
.text-on-primary{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}
.text-on-primary-fixed{--tw-text-opacity:1;color:rgb(1 33 22 / var(--tw-text-opacity, 1))}
.text-on-secondary{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}
.text-on-surface{--tw-text-opacity:1;color:rgb(29 27 25 / var(--tw-text-opacity, 1))}
.text-on-surface-variant{--tw-text-opacity:1;color:rgb(66 72 68 / var(--tw-text-opacity, 1))}
.text-outline{--tw-text-opacity:1;color:rgb(114 121 116 / var(--tw-text-opacity, 1))}
.text-primary{--tw-text-opacity:1;color:rgb(22 52 40 / var(--tw-text-opacity, 1))}
.text-secondary{--tw-text-opacity:1;color:rgb(148 73 49 / var(--tw-text-opacity, 1))}
.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}
.placeholder\:text-outline\/70::placeholder{color:rgb(114 121 116 / 0.7)}
.hover\:border-outline-variant:hover{--tw-border-opacity:1;border-color:rgb(193 200 195 / var(--tw-border-opacity, 1))}
.hover\:bg-\[\#ece7e3\]:hover{--tw-bg-opacity:1;background-color:rgb(236 231 227 / var(--tw-bg-opacity, 1))}
.hover\:bg-primary-container:hover{--tw-bg-opacity:1;background-color:rgb(45 75 62 / var(--tw-bg-opacity, 1))}
.hover\:bg-secondary\/90:hover{background-color:rgb(148 73 49 / 0.9)}
.hover\:bg-surface-container-high:hover{--tw-bg-opacity:1;background-color:rgb(236 231 227 / var(--tw-bg-opacity, 1))}
.hover\:text-\[\#fef8f4\]:hover{--tw-text-opacity:1;color:rgb(254 248 244 / var(--tw-text-opacity, 1))}
.hover\:text-on-secondary-container:hover{--tw-text-opacity:1;color:rgb(119 51 29 / var(--tw-text-opacity, 1))}
.hover\:text-primary:hover{--tw-text-opacity:1;color:rgb(22 52 40 / var(--tw-text-opacity, 1))}
.focus\:bg-surface-container:focus{--tw-bg-opacity:1;background-color:rgb(242 237 233 / var(--tw-bg-opacity, 1))}
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}
@media (min-width: 640px){.sm\:inline{display:inline}.sm\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-space-md{gap:1rem}.sm\:p-space-lg{padding:1.75rem}.sm\:p-space-xl{padding:3rem}.sm\:text-headline-md{font-size:28px;line-height:36px;font-weight:400}}
@media (min-width: 768px){.md\:col-span-3{grid-column:span 3 / span 3}.md\:col-span-4{grid-column:span 4 / span 4}.md\:min-h-\[120px\]{min-height:120px}.md\:min-h-\[32px\]{min-height:32px}.md\:min-h-\[40px\]{min-height:40px}.md\:min-h-\[60px\]{min-height:60px}.md\:min-h-\[72px\]{min-height:72px}.md\:grid-cols-12{grid-template-columns:repeat(12, minmax(0, 1fr))}.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\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-start{justify-content:flex-start}}
@media (min-width: 1024px){.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-5{grid-column:span 5 / span 5}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-7{grid-column:span 7 / span 7}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:mt-0{margin-top:0px}.lg\:grid-cols-12{grid-template-columns:repeat(12, minmax(0, 1fr))}.lg\:gap-12{gap:3rem}.lg\:gap-8{gap:2rem}.lg\:border-l{border-left-width:1px}.lg\:border-\[\#2d4b3e\]{--tw-border-opacity:1;border-color:rgb(45 75 62 / var(--tw-border-opacity, 1))}.lg\:p-space-xl{padding:3rem}.lg\:px-0{padding-left:0px;padding-right:0px}.lg\:px-margin{padding-left:3.5rem;padding-right:3.5rem}.lg\:pl-space-lg{padding-left:1.75rem}.lg\:pr-6{padding-right:1.5rem}.lg\:pt-0{padding-top:0px}}

/* Shared visual system. Edit here to update all five pages. */
:root {
  --site-cream:#fef8f4; --site-green:#163428; --site-green-hover:#2d4b3e;
  --site-accent:#944931; --site-ink:#1d1b19; --site-muted:#424844;
  --site-tint:#f2ede9; --site-border:#d7dcd7; --site-radius:8px;
}
html { scroll-behavior:smooth; scrollbar-gutter:stable; }
body.site-page { margin:0; background:var(--site-cream); color:var(--site-ink); font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
body.site-page main { padding-top:0 !important; }
body.site-page main:focus { outline:none; }
.site-page a { transition:color 160ms ease,background-color 160ms ease,border-color 160ms ease; }
.site-page a:focus-visible,.site-page button:focus-visible,.site-page input:focus-visible,.site-page textarea:focus-visible {
  outline:2px solid var(--site-accent) !important; outline-offset:4px;
}
.site-page [id] { scroll-margin-top:104px; }
.site-page a[aria-disabled="true"] { cursor:default; }
.skip-link { position:fixed; left:20px; top:-100px; padding:12px 20px; z-index:100; background:var(--site-green); color:var(--site-cream); border-radius:4px; }
.skip-link:focus { top:12px; }
/* Header stays in document flow. No page-specific compensation or hero jump. */
body.site-page .site-header { position:sticky !important; top:0; z-index:50; width:100%; background:var(--site-cream); border-bottom:1px solid #e7e5de; box-shadow:0 1px 8px #00000006; }
.site-header-inner { max-width:1280px; margin:0 auto; padding:16px 56px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.site-brand { display:flex; flex-direction:column; flex-shrink:0; text-decoration:none; color:var(--site-green); }
.site-brand-name { font-family:'Newsreader',Georgia,serif; font-size:22px; line-height:30px; font-weight:500; }
.site-brand-role { font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif; font-size:11px; line-height:16px; letter-spacing:.025em; font-weight:500; text-transform:uppercase; color:var(--site-accent); }
.site-header-actions { display:flex; align-items:center; gap:20px; }
.site-nav { display:flex; align-items:center; flex-wrap:wrap; gap:16px; font:600 12px/18px 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; letter-spacing:.025em; }
.site-nav a { display:inline-flex; align-items:center; min-height:34px; border-bottom:2px solid transparent; padding:5px 0; color:var(--site-muted); text-decoration:none; white-space:nowrap; }
.site-nav a[aria-current="page"] { color:var(--site-green); border-bottom-color:var(--site-accent); }
.site-nav a:hover { color:var(--site-green); border-bottom-color:var(--site-accent); }
.site-nav-separator { color:#adb5af; font-weight:400; }
.site-socials { display:flex; align-items:center; gap:6px; }
.site-social-link { display:inline-flex; width:28px; height:34px; align-items:center; justify-content:center; color:var(--site-muted); }
.site-social-link svg { width:16px; height:16px; fill:currentColor; }
.site-social-link:hover { color:var(--site-accent); }
.site-header .site-header-cta { min-height:34px; padding:7px 16px; font-size:12px; line-height:18px; margin-left:4px; }
/* One eyebrow, one starting line, and one readable italic weight. */
.site-page .site-hero { padding-top:56px !important; padding-bottom:64px !important; }
.site-page .site-hero-grid { align-items:start !important; column-gap:48px !important; }
.site-page .site-hero-copy { padding-top:0 !important; }
.site-page .site-hero-visual { padding-top:0 !important; margin-top:0 !important; }
.site-eyebrow { display:flex; align-items:center; gap:9px; min-height:18px; margin:0 0 20px; color:var(--site-accent); font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif; font-size:12px; line-height:18px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.site-dot { width:6px; height:6px; flex:0 0 6px; border-radius:50%; background:currentColor; }
.site-page .site-hero-title { margin:0 0 32px !important; font-family:'Newsreader','Newsreader Fallback',Georgia,serif !important; font-size:56px !important; line-height:1.12 !important; font-weight:400 !important; letter-spacing:-.02em; color:var(--site-green) !important; }
.site-page .site-hero-title em { font-family:inherit; font-style:italic; font-weight:450; color:inherit; }
.site-page .site-hero-lead { font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif; font-size:18px !important; line-height:1.65 !important; font-weight:400 !important; color:var(--site-muted) !important; }
.site-page .site-image-frame { background:var(--site-tint); padding:12px; border:1px solid #e7e3dd; border-radius:var(--site-radius); box-shadow:0 2px 8px #16342806; }
.site-image-frame > img,.site-image-frame > div { border-radius:4px; }
/* Shared controls, with separate treatment for light buttons on dark panels. */
.site-page .site-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:11px 24px; border:1px solid transparent; border-radius:4px; font:600 14px/20px 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; letter-spacing:.01em; text-decoration:none; white-space:normal; cursor:pointer; box-shadow:none; }
.site-page .site-button-primary { background:var(--site-green); color:var(--site-cream); }
.site-page .site-button-primary:hover { background:var(--site-green-hover); }
.site-page .site-button-light { background:var(--site-cream); color:var(--site-green); }
.site-page .site-button-light:hover { background:#e9eee8; }
.site-page .site-text-link { text-underline-offset:4px; text-decoration-thickness:1px; }
.site-page .site-text-link:hover { text-decoration-line:underline; }
/* Small repeated details connect the editorial pages to the service pages. */
.site-section-accent::before { content:''; display:block; width:32px; height:2px; background:var(--site-accent); margin-bottom:20px; }
.site-accent-card { border-top:2px solid var(--site-accent) !important; box-shadow:0 2px 8px #16342805; }
.site-page .site-project-outcome { border-left:2px solid var(--site-accent); padding-left:16px; }
.site-page #reykjavik .site-project-outcome { border-color:#ffb59f; }
/* Contact and footer use the identical component on every page. */
.site-page .site-contact { padding-top:48px; padding-bottom:48px; }
.site-page .site-contact h2 { font:400 40px/1.2 'Newsreader',Georgia,serif; letter-spacing:-.015em; }
.site-page .site-contact label { font:600 13px/20px 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
.site-page .site-contact input,.site-page .site-contact textarea { border:1px solid #c5cdc5; border-radius:4px; background:#f8f3ef; font:400 15px/24px 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
.site-page .site-contact input { min-height:46px; }
.site-page .site-contact textarea { min-height:138px; resize:vertical; }
.site-page .site-contact input:focus,.site-page .site-contact textarea:focus { background:var(--site-cream); border-color:var(--site-green); }
.site-page .site-contact [id="message-help"],.site-page .site-contact .text-label-annotation { font-size:13px; line-height:20px; }
.site-footer { font-family:'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
.site-footer-brand { text-decoration:none; }
.site-footer-brand > span:first-child { font-family:'Newsreader','Newsreader Fallback',Georgia,serif !important; }
.site-footer nav a[aria-current="page"] { text-decoration:underline; text-decoration-color:var(--site-accent); text-underline-offset:4px; }
@media (max-width:1199px) {
 .site-header-inner { align-items:flex-start; }
 .site-header-actions { flex-direction:column; align-items:flex-end; gap:6px; }
}
@media (max-width:1023px) {
 body.site-page .site-header { position:relative !important; }
 .site-header-inner { padding:16px 20px; flex-direction:column; align-items:flex-start; gap:12px; }
 .site-header-actions { align-items:flex-start; gap:8px; }
 .site-nav { gap:12px; }
 .site-nav a { min-height:40px; }
 .site-social-link { width:36px; height:40px; }
 .site-page [id] { scroll-margin-top:24px; }
 .site-page .site-hero { padding-top:40px !important; padding-bottom:48px !important; }
 .site-page .site-hero-title { font-size:44px !important; }
 .site-page .site-hero-grid { row-gap:32px !important; }
 .site-page .site-hero-visual { width:100%; }
}
@media (max-width:639px) {
 .site-brand-role { font-size:10px; letter-spacing:.015em; }
 .site-nav { column-gap:10px; row-gap:2px; }
 .site-eyebrow { font-size:11px; letter-spacing:.08em; margin-bottom:20px; }
 .site-page .site-hero-title { font-size:38px !important; margin-bottom:24px !important; }
 .site-page .site-hero-title br { display:none; }
 .site-page .site-hero-lead { font-size:17px !important; }
 .site-page .site-hero-copy > div:has(>.site-button) { flex-wrap:wrap; gap:16px; }
 .site-page .site-contact h2 { font-size:30px; }
 .site-page .site-contact > div { padding:24px; }
 .site-page .site-contact form { min-width:0; }
 .site-page .site-contact .lg\:col-span-7 { padding:20px; }
 .site-page .site-contact a[href^="mailto:"] { overflow-wrap:anywhere; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto !important; }
 .site-page *, .site-page *::before, .site-page *::after { transition:none !important; animation:none !important; }
}

/* Keep section headings and text-link actions consistent at each breakpoint. */
.site-page main h2 { font-family:'Newsreader',Georgia,serif; font-size:40px; line-height:1.2; font-weight:400; }
.site-page .site-hero-copy > div > .site-text-link { font-size:14px; font-weight:600; }
.site-page .site-header .site-header-cta { min-height:34px; padding:7px 16px; font-size:12px; line-height:18px; }
@media(max-width:639px) {
 .site-page main h2 { font-size:30px; }
 .site-page .site-header .site-header-cta { min-height:44px; }
}

@media(min-width:1024px) and (max-width:1199px) {
 .site-page [id] { scroll-margin-top:132px; }
}
@media(max-width:359px) { .site-eyebrow { min-height:36px; } }
@media(max-width:639px) { .site-page .site-contact input,.site-page .site-contact textarea { font-size:16px; } }

/* Review refinements: readable support text and explicit component responsibilities. */
:root { --site-muted-text:#626a64; --site-soft-accent:#ffdbd0; }
.site-page [hidden] { display:none !important; }
.site-page .text-outline { color:var(--site-muted-text); }
.site-caption { display:block; color:var(--site-muted-text); font:400 12px/1.6 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; margin:8px 0 0; }
.site-context-link { display:inline-flex; align-items:center; align-self:flex-start; margin-top:20px; min-height:32px; color:var(--site-accent); font:600 14px/1.6 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; text-decoration:underline; }
#reykjavik .site-context-link { color:var(--site-soft-accent); }
.site-related-work { margin:24px 0 0; font-size:15px; line-height:1.65; color:var(--site-muted); }
.site-availability { margin:20px 0 0; color:var(--site-muted); font-size:14px; line-height:1.65; }
.site-experience-note { font-size:14px; line-height:1.65; }
.site-placex-learning { padding:24px 28px; background:#2d4b3e; }
@media(max-width:600px){ .site-placex-learning { padding:20px 22px; } }
.site-section-nav { display:flex; flex-wrap:wrap; gap:4px 20px; margin-top:16px; font-size:13px; line-height:1.6; }
.site-section-nav a { display:inline-flex; align-items:center; min-height:36px; text-decoration:underline; text-underline-offset:4px; color:var(--site-accent); }
.site-project-descriptor { display:block; margin-top:8px; color:var(--site-muted); font:400 12px/1.5 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
.site-page .site-form-help { color:var(--site-muted); font:400 14px/1.6 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; }
.site-page .site-copy-button { display:inline-flex; align-self:flex-start; align-items:center; min-height:36px; background:none; border:0; padding:4px 0; color:var(--site-accent); font:600 13px/1.5 'Plus Jakarta Sans','Jakarta Fallback',sans-serif; text-decoration:underline; cursor:pointer; }
.site-page .site-footer nav a { display:inline-flex; align-items:center; align-self:flex-start; min-height:32px; }
.site-page .site-case-grid { grid-template-columns:var(--case-image-columns) var(--case-copy-columns); grid-template-areas:'image intro' 'image body'; row-gap:0; align-items:start; }
.site-page .site-case-image-right { grid-template-columns:var(--case-copy-columns) var(--case-image-columns); grid-template-areas:'intro image' 'body image'; }
.site-case-intro { grid-area:intro; min-width:0; }
.site-case-body { grid-area:body; min-width:0; }
.site-case-image { grid-area:image; align-self:center; min-width:0; }
.site-page #placex [class*='text-primary-fixed-dim/'] { color:#e1e7e2; }
.site-page #placex a:focus-visible { outline-color:var(--site-soft-accent) !important; }
@media(max-width:1023px) {
 .site-header .site-social-link { display:none; }
 .site-header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 16px; padding:14px 20px; }
 .site-header-actions { display:contents; }
 .site-header .site-socials { grid-column:2; grid-row:1; }
 .site-header .site-nav { grid-column:1/-1; grid-row:2; }
 .site-page .site-case-grid { grid-template-columns:minmax(0,1fr); grid-template-areas:'intro' 'image' 'body'; row-gap:24px; }
 .site-case-image { width:100%; aspect-ratio:3/2; max-height:440px; }
 .site-case-image > div { width:100%; height:100%; max-height:440px; aspect-ratio:auto; }
 #jtre .site-case-image { aspect-ratio:4/3; max-height:none; }
 #jtre .site-case-image > div { max-width:none; max-height:none; }
 .page-about .site-hero-visual [class*='aspect-'] { max-height:540px; }
 .page-speaking_education #talks,.page-speaking_education #education,.page-speaking_education #placex,.page-speaking_education #content { padding-top:64px; padding-bottom:64px; }
 .site-page .site-strategy-projects { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:639px) {
 .site-header-inner { display:flex; gap:6px; }
 .site-header-actions { display:flex; gap:6px; }
 .site-header .site-header-cta { margin-left:0; }
 .site-header .site-nav a { min-height:36px; }
 .site-header .site-socials { display:none; }
 .site-page .site-contact > div { padding:20px; }
 .site-page .site-contact .lg\:col-span-7 { padding:0; border:0; box-shadow:none; background:transparent; }
 .site-page .site-contact a[href^='mailto:'] { font-size:clamp(18px,5.3vw,24px); overflow-wrap:normal; }
 .site-page .site-footer nav a { min-height:40px; }
 .site-page .site-strategy-projects { grid-template-columns:minmax(0,1fr); }
}
/* Focus indicators on the existing dark surfaces need a light counterpart. */
.site-page :is(#reykjavik,#placex,#spatial-strategy > .bg-primary,[class*='bg-[#1B3327]']) :is(a,button):focus-visible { outline-color:var(--site-soft-accent) !important; }
.site-brand-role { font-family:'Plus Jakarta Sans',Arial,sans-serif; }
@media(max-width:639px) {
 .site-page .site-hero-title { font-family:'Newsreader','Newsreader Fallback Small',Georgia,serif !important; }
}

/* Approved editorial additions. */
.site-editorial-quote { margin:32px 0 0; padding:24px 0 8px 24px; border-left:2px solid #a35f45; max-width:780px; }
.site-editorial-quote blockquote { margin:0 0 16px; font-family:Newsreader,Georgia,serif; font-size:clamp(24px,2.4vw,32px); line-height:1.3; color:#163428; }
.site-editorial-quote figcaption { font-size:14px; color:#424844; }
.site-media { text-align:center; }
.site-media > p { margin:12px 0 24px; }
.site-media-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.site-media-item { display:flex; flex-direction:column; align-items:center; gap:10px; color:#163428; text-decoration:none; font-size:14px; line-height:1.5; }
.site-media-item img { width:100%; max-width:240px; height:110px; object-fit:contain; }
.site-media-item > span:first-of-type { flex:1; }
.site-media-read { color:#8b4d35; text-decoration:underline; text-underline-offset:4px; }
.site-media-item:hover .site-media-read { color:#163428; }
.site-replacement-frame { position:relative; overflow:hidden; padding:0 !important; }
.site-replacement-image { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
#jtre .site-replacement-image { transform:scale(1.12); }
.site-page img[src$="redeia-workplace-evaluation-methodology.webp"] { transform:scale(1.12); }
.site-replacement-fallback { display:flex; align-items:center; justify-content:center; width:100%; height:100%; min-height:120px; color:#626a64; padding:24px; }
.site-contact button:disabled { opacity:.6; cursor:not-allowed; }
@media(max-width:767px) { .site-media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; } .site-media-item img { height:85px; } .site-editorial-quote { padding-left:18px; } }
.site-social-link[aria-label="Instagram"] svg { fill:none; }
.site-image-caption { font-size:13px; line-height:1.5; color:#626a64; margin:8px 0 16px; }
.site-page .site-hero-credit { margin:8px 0 0; }

