.elementor-9815 .elementor-element.elementor-element-c000004{--display:flex;--min-height:150px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:9600;}.elementor-9815 .elementor-element.elementor-element-c000004:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c000004 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#163C50;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-9815 .elementor-element.elementor-element-w000001 img{width:298px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-menu-toggle{margin:0 auto;}.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu .elementor-item{font-family:"Benton Sans WSoS", Sans-serif;font-size:18px;font-weight:400;}.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main .elementor-item{color:#FCF4F0;fill:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main .elementor-item:focus{color:#FCF4F0;fill:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000002{--e-nav-menu-horizontal-menu-item-margin:calc( 74px / 2 );--nav-menu-icon-size:32px;}.elementor-9815 .elementor-element.elementor-element-w000002 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:74px;}.elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle{color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle svg{fill:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle:hover, .elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle:focus{color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle:hover svg, .elementor-9815 .elementor-element.elementor-element-w000002 div.elementor-menu-toggle:focus svg{fill:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000003 img{width:167px;}.elementor-9815 .elementor-element.elementor-element-c00000f{--display:flex;--min-height:862px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c00000f:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c00000f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c000009{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:172px;--margin-bottom:0px;--margin-left:93px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-9815 .elementor-element.elementor-element-w000005 .elementor-heading-title{font-family:"weizmann-regular", Sans-serif;font-size:31px;font-weight:700;line-height:26px;letter-spacing:-0.62px;color:#F06133;}.elementor-9815 .elementor-element.elementor-element-w000006 > .elementor-widget-container{margin:20px 0px 0px 0px;}.elementor-9815 .elementor-element.elementor-element-w000006 .elementor-heading-title{font-family:"weizmann-regular", Sans-serif;font-size:101.43px;font-weight:400;line-height:102.445px;color:#F9F5EB;}.elementor-9815 .elementor-element.elementor-element-w000007 > .elementor-widget-container{margin:8px 0px 0px 0px;}.elementor-9815 .elementor-element.elementor-element-w000007 .elementor-heading-title{font-family:"Benton Sans WSoS", Sans-serif;font-size:37.278px;font-weight:500;line-height:50.396px;letter-spacing:0.7456px;color:#BFF2FF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-9815 .elementor-element.elementor-element-w000008 .elementor-button{background-color:#F06133;font-family:"Benton Sans WSoS", Sans-serif;font-size:22.627px;font-weight:500;line-height:37.026px;letter-spacing:-0.2263px;fill:#163C50;color:#163C50;border-radius:22.627px 22.627px 22.627px 22.627px;padding:7.199px 20.57px 11.313px 20.57px;}.elementor-9815 .elementor-element.elementor-element-w000008 > .elementor-widget-container{margin:34px 0px 0px 0px;}.elementor-9815 .elementor-element.elementor-element-c00000e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c0003f3{--display:flex;--min-height:1664px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c0003f3:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c0003f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c0003ed{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 260px;--row-gap:0px;--column-gap:260px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w0003e9 .elementor-heading-title{font-family:"weizmann-regular", Sans-serif;font-size:65.118px;font-weight:400;line-height:67.174px;letter-spacing:-0.6512px;color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c0003ec{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 35px;--row-gap:0px;--column-gap:35px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-9815 .elementor-element.elementor-element-w0003ea{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:-0.16px;color:#163C50;}.elementor-9815 .elementor-element.elementor-element-w0003eb{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:-0.16px;color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c0003f0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w0003ee img{width:63.217px;}.elementor-9815 .elementor-element.elementor-element-w0003ef img{width:113.408px;}.elementor-9815 .elementor-element.elementor-element-c0003f2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000839{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:67px 0px;--row-gap:67px;--column-gap:0px;--padding-top:30px;--padding-bottom:114px;--padding-left:96px;--padding-right:96px;}.elementor-9815 .elementor-element.elementor-element-c000839:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c000839 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c0007d5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c0007d4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 37px;--row-gap:0px;--column-gap:37px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w0007d2{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:0.22px;color:#163C50;}.elementor-9815 .elementor-element.elementor-element-w0007d3{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:0.22px;color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c000838{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:9px 0px;--row-gap:9px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000bbe{--display:flex;--min-height:690px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000bbe:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c000bbe > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c000bbd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000bbc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 37px;--row-gap:0px;--column-gap:37px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w000bba{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:0.22px;color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-w000bbb{font-family:"Benton Sans WSoS", Sans-serif;font-size:22px;font-weight:400;line-height:36px;letter-spacing:0.22px;color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c000bc5{--display:flex;--min-height:627px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 66px;--row-gap:0px;--column-gap:66px;--padding-top:99px;--padding-bottom:84px;--padding-left:84px;--padding-right:84px;}.elementor-9815 .elementor-element.elementor-element-c000bc5:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c000bc5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c000bc0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000bc2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000bc4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000fa6{--display:flex;--min-height:916px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000fa6:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c000fa6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c000fa5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 136px;--row-gap:0px;--column-gap:136px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c000fa3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:38px 0px;--row-gap:38px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c001393{--display:flex;--min-height:256px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c001393:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c001393 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c001392{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w00138f img{width:88.775px;}.elementor-9815 .elementor-element.elementor-element-w001390 img{width:65.306px;}.elementor-9815 .elementor-element.elementor-element-w001391 img{width:85px;}.elementor-9815 .elementor-element.elementor-element-c00138e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c00138e:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c00138e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#163C50;}.elementor-9815 .elementor-element.elementor-element-c00138d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w00138c .elementor-heading-title{font-family:"weizmann-regular", Sans-serif;font-size:52.983px;font-weight:400;line-height:58.739px;letter-spacing:-0.5298px;color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c00138b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:0px 47px;--row-gap:0px;--column-gap:47px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w00138a img{width:50px;}.elementor-9815 .elementor-element.elementor-element-c00177e{--display:flex;--padding-top:122px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c00177e:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c00177e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4F0;}.elementor-9815 .elementor-element.elementor-element-c00177d{--display:flex;--min-height:377px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-c00177d:not(.elementor-motion-effects-element-type-background), .elementor-9815 .elementor-element.elementor-element-c00177d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#163C50;}.elementor-9815 .elementor-element.elementor-element-wf00001 img{width:135px;}.elementor-9815 .elementor-element.elementor-element-w001778 img{width:141px;}.elementor-9815 .elementor-element.elementor-element-w001779 img{width:139px;}.elementor-9815 .elementor-element.elementor-element-c001777{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 26.06px;--row-gap:0px;--column-gap:26.06px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9815 .elementor-element.elementor-element-w001771 img{width:40.352px;}.elementor-9815 .elementor-element.elementor-element-w001772 img{width:40.352px;}.elementor-9815 .elementor-element.elementor-element-w001773 img{width:40.352px;}.elementor-9815 .elementor-element.elementor-element-w001774 img{width:40.352px;}.elementor-9815 .elementor-element.elementor-element-w001775 img{width:40.352px;}.elementor-9815 .elementor-element.elementor-element-w001776 img{width:40.352px;}@media(min-width:768px){.elementor-9815 .elementor-element.elementor-element-c000004{--content-width:1720px;}.elementor-9815 .elementor-element.elementor-element-c000009{--width:720px;}}/* Start custom CSS *//* One scale unit for the whole desktop layout: a Figma value N goes straight
   in as calc(N*var(--ou-u)). At >=1920 it is 1px, below it scales proportionally. */
.elementor-9815{--ou-u:min(1px, calc(100vw / 1920))}
/* ---- Outstanding page: hero geometry (design 1920x6411) ---- */
.elementor-9815 .ou-hero{position:relative;overflow:hidden}

/* shape stage: Figma left 971.31 top 433, 888.702 x 562.645 */
.elementor-9815 .ou-hero-shapes{position:absolute;left:50.5891%;top:calc(283*var(--ou-u));width:46.2866%;aspect-ratio:888.702/562.645;padding:0;pointer-events:none}
.elementor-9815 .ou-hero-shapes .elementor-widget{position:absolute;margin:0}
.elementor-9815 .ou-hero-shapes img{display:block;width:100%;height:auto}

/* each shape as a % of the stage, order per Figma: capsule, leaf, circle, blob */
.elementor-9815 .ou-s-capsule{left:1.878%;top:52.786%;width:27.456%;z-index:1}
.elementor-9815 .ou-s-leaf{left:3.043%;top:17.710%;width:71.849%;z-index:2}
.elementor-9815 .ou-s-circle{left:31.697%;top:-16.885%;width:19.130%;z-index:3}
.elementor-9815 .ou-s-blob{left:35.333%;top:-0.746%;width:75.269%;z-index:4}

/* header: nav sits on the right logo's baseline, as in the design */
.elementor-9815 .ou-nav{margin-top:calc(22*var(--ou-u))}
.elementor-9815 .ou-header{text-align:left}
.elementor-9815 .ou-nav .elementor-nav-menu--main .elementor-item{padding:0}
.elementor-9815 .ou-nav .elementor-nav-menu--main>li:not(:last-child){margin-right:calc(74*var(--ou-u))}

.elementor-9815 .ou-hero-btn .elementor-button{width:calc(361*var(--ou-u))}

/* single-shot hover pulse, per the agreed animation system */
@keyframes ouPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}100%{transform:scale(1)}}
.elementor-9815 .ou-hero-btn .elementor-button,
.elementor-9815 .ou-nav .elementor-item{transition:transform .3s}
.elementor-9815 .ou-hero-btn .elementor-button:hover,
.elementor-9815 .ou-nav .elementor-item:hover{animation:ouPulse 1s ease-in-out}
@media (prefers-reduced-motion:reduce){
 .elementor-9815 .ou-hero-btn .elementor-button:hover,
 .elementor-9815 .ou-nav .elementor-item:hover{animation:none}
}
/* ---- Section 2: A Program for Scientific Excellence (Figma 1:280, h1664) ---- */
.elementor-9815 .ou-about{position:relative;overflow:hidden}
.elementor-9815 .ou-about-row{position:absolute;left:calc(110*var(--ou-u));top:calc(88*var(--ou-u));width:auto;padding:0}
.elementor-9815 .ou-about-head{width:calc(542*var(--ou-u));flex:0 0 calc(542*var(--ou-u))}
.elementor-9815 .ou-about-c1,
.elementor-9815 .ou-about-c2{width:calc(444*var(--ou-u));flex:0 0 calc(444*var(--ou-u))}
.elementor-9815 .ou-about-cols p{margin:0 0 calc(36*var(--ou-u))}
.elementor-9815 .ou-about-cols p:last-child{margin-bottom:0}

/* decorative pair, placed on the ink centre then rotated (Figma 1:289 / 1:290) */
.elementor-9815 .ou-about-shapes{position:absolute;left:0;top:0;width:100%;height:0;padding:0;pointer-events:none}
.elementor-9815 .ou-about-shapes .elementor-widget{position:absolute;margin:0}
.elementor-9815 .ou-about-shapes img{display:block;width:100%;height:auto}
.elementor-9815 .ou-about-leaf{left:calc(160.03*var(--ou-u));top:calc(624.96*var(--ou-u));width:calc(63.217*var(--ou-u));transform:rotate(-139.81deg)}
.elementor-9815 .ou-about-circle{left:calc(232.95*var(--ou-u));top:calc(653.08*var(--ou-u));width:calc(113.408*var(--ou-u));transform:rotate(0.52deg)}

/* wide photo: 1760 x 790.4 at y765.9, radius 46, image cropped 143.73% tall at -8.12% */
.elementor-9815 .ou-about-photo{position:absolute;left:50%;transform:translateX(-50%);top:calc(765.9*var(--ou-u));width:calc(1760*var(--ou-u));height:calc(790.4*var(--ou-u));padding:0;border-radius:calc(46*var(--ou-u));overflow:hidden}
.elementor-9815 .ou-about-photo .elementor-widget{position:absolute;inset:0;margin:0;width:100%;height:100%}
.elementor-9815 .ou-about-photo-img,
.elementor-9815 .ou-about-photo-img .elementor-widget-container{height:100%}
.elementor-9815 .ou-about-photo img{display:block;width:100%;height:143.73%;object-fit:cover;position:absolute;left:0;top:-8.12%}
/* ---- Step 1 (Figma 1:293, h747, page y2676-3423) ---- */
.elementor-9815 .ou-step1{position:relative}
.elementor-9815 .ou-s1-row{width:calc(1725*var(--ou-u));margin:0 auto;padding:0}
.elementor-9815 .ou-s1-head{width:calc(540*var(--ou-u));flex:0 0 calc(540*var(--ou-u))}
.elementor-9815 .ou-s1-c1,.elementor-9815 .ou-s1-c2{width:calc(444*var(--ou-u));flex:0 0 calc(444*var(--ou-u))}
.elementor-9815 .ou-s1-cols p{margin:0}
.elementor-9815 .ou-step-label{font-family:'weizmann-regular',serif;font-weight:700;font-size:calc(37.5*var(--ou-u));line-height:calc(67.174*var(--ou-u));color:#6E0032;margin:0}
.elementor-9815 .ou-step-title{font-family:'weizmann-regular',serif;font-weight:400;font-size:calc(65.118*var(--ou-u));line-height:calc(67.174*var(--ou-u));letter-spacing:calc(-0.6512*var(--ou-u));color:#163C50;margin:0}

/* ---- Accordions: 1006 wide, right-aligned, 9px apart ---- */
.elementor-9815 .ou-accs{width:100%;padding:0}
.elementor-9815 .ou-accw{width:calc(1006*var(--ou-u));flex:0 0 auto}
.elementor-9815 .ou-acc{width:calc(1006*var(--ou-u));border-radius:calc(35*var(--ou-u));overflow:hidden;box-sizing:border-box}
.elementor-9815 .ou-acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;height:calc(104*var(--ou-u));box-sizing:border-box}
.elementor-9815 .ou-acc summary::-webkit-details-marker{display:none}
.elementor-9815 .ou-acc summary::marker{content:''}
.elementor-9815 .ou-acc-t{font-family:'weizmann-regular',serif;font-weight:400;font-size:calc(48.84*var(--ou-u));line-height:1}
.elementor-9815 .ou-acc-i{width:calc(12.277*var(--ou-u));height:calc(24.554*var(--ou-u));flex:0 0 calc(12.277*var(--ou-u));display:block;transition:transform .3s}
.elementor-9815 .ou-acc[open] .ou-acc-i{transform:rotate(90deg)}
.elementor-9815 .ou-acc-b{font-family:'Benton Sans WSoS',sans-serif;font-size:calc(23.273*var(--ou-u));line-height:calc(33.567*var(--ou-u));letter-spacing:calc(-0.2327*var(--ou-u))}
.elementor-9815 .ou-acc-b p{margin:0 0 calc(33.567*var(--ou-u))}
.elementor-9815 .ou-acc-b p:last-child,.elementor-9815 .ou-acc-b ul:last-child{margin-bottom:0}
.elementor-9815 .ou-acc-b a{text-decoration:underline;text-underline-offset:.12em;color:inherit}
.elementor-9815 .ou-acc-b ul{margin:0;padding-left:1.2em;list-style:disc}

.elementor-9815 .ou-acc-1{background:#EF874A}
.elementor-9815 .ou-acc-1 summary{padding:0 calc(73.7*var(--ou-u)) 0 calc(52*var(--ou-u))}
.elementor-9815 .ou-acc-1 .ou-acc-t,.elementor-9815 .ou-acc-1 .ou-acc-b{color:#163C50}
.elementor-9815 .ou-acc-1 .ou-acc-b{padding:calc(4*var(--ou-u)) calc(73.7*var(--ou-u)) calc(41*var(--ou-u)) calc(52*var(--ou-u))}
.elementor-9815 .ou-acc-2{background:#6E0032}
.elementor-9815 .ou-acc-2 summary{padding:0 calc(73.7*var(--ou-u)) 0 calc(54*var(--ou-u))}
.elementor-9815 .ou-acc-2 .ou-acc-t,.elementor-9815 .ou-acc-2 .ou-acc-b{color:#FCF4F0}
.elementor-9815 .ou-acc-2 .ou-acc-b{padding:calc(4*var(--ou-u)) calc(73.7*var(--ou-u)) calc(41*var(--ou-u)) calc(54*var(--ou-u))}
.elementor-9815 .ou-acc-3{background:#D9D9D9}
.elementor-9815 .ou-acc-3 summary{padding:0 calc(72.7*var(--ou-u)) 0 calc(51*var(--ou-u))}
.elementor-9815 .ou-acc-3 .ou-acc-t,.elementor-9815 .ou-acc-3 .ou-acc-b{color:#163C50}
.elementor-9815 .ou-acc-3 .ou-acc-b{padding:calc(4*var(--ou-u)) calc(62*var(--ou-u)) calc(46*var(--ou-u)) calc(51*var(--ou-u));font-size:calc(22.39*var(--ou-u));line-height:calc(33.6*var(--ou-u))}
/* Step 1 row: Figma box is 206 tall and its children OVERFLOW it, centred
   (headline box 394, text box 240) - this is what puts "Step 1" 94px above the row. */
.elementor-9815 .ou-s1-row{width:100%;max-width:calc(1725*var(--ou-u));height:calc(206*var(--ou-u));margin:0 auto;align-items:center;justify-content:space-between;overflow:visible}
.elementor-9815 .ou-s1-head{height:calc(394*var(--ou-u));flex:0 0 calc(540*var(--ou-u))}
.elementor-9815 .ou-s1-cols{height:calc(240*var(--ou-u));flex:0 0 calc(925*var(--ou-u))}
.elementor-9815 .ou-step1{overflow:visible}
/* ---- Step 2 (Figma 1:305, navy, h690, page y3423-4113) ---- */
.elementor-9815 .ou-step2{position:relative;overflow:hidden}
.elementor-9815 .ou-s2-row{position:absolute;left:50%;transform:translateX(-50%);top:calc(122*var(--ou-u));width:100%;max-width:calc(1724*var(--ou-u));height:calc(240*var(--ou-u));align-items:center;justify-content:space-between;padding:0;overflow:visible}
.elementor-9815 .ou-s2-head{height:calc(360*var(--ou-u));flex:0 0 calc(621*var(--ou-u))}
.elementor-9815 .ou-s2-cols{height:calc(216*var(--ou-u));flex:0 0 calc(925*var(--ou-u))}
.elementor-9815 .ou-s2-c1,.elementor-9815 .ou-s2-c2{width:calc(444*var(--ou-u));flex:0 0 calc(444*var(--ou-u))}
.elementor-9815 .ou-s2-cols p{margin:0}
.elementor-9815 .ou-s2-cols p.lead{margin-bottom:calc(36*var(--ou-u))}
.elementor-9815 .ou-s2-cols p.lead strong{color:#BFF2FF;font-weight:700}
.elementor-9815 .ou-cyan{color:#BFF2FF}
.elementor-9815 .ou-cream{color:#FCF4F0}

/* ---- Photo row (Figma 1:313, h627, page y4113-4740) ---- */
.elementor-9815 .ou-photos{align-items:flex-start}
.elementor-9815 .ou-ph{width:calc(540*var(--ou-u));flex:0 0 calc(540*var(--ou-u));height:calc(444*var(--ou-u));border-radius:calc(46*var(--ou-u));overflow:hidden;padding:0}
.elementor-9815 .ou-ph .elementor-widget,.elementor-9815 .ou-ph .elementor-widget-container{height:100%}
.elementor-9815 .ou-ph img{display:block;width:100%;height:100%;object-fit:cover}
.elementor-9815 .ou-ph3 img{object-position:30% 50%}
/* ---- Eligibility / Timeline / Requirements (Figma 1:318, h916, page y4740-5656) ---- */
.elementor-9815 .ou-elig{position:relative;overflow:hidden}
.elementor-9815 .ou-el-row{position:absolute;left:calc(106*var(--ou-u));top:0;width:calc(1708*var(--ou-u));padding:0;align-items:flex-start}
.elementor-9815 .ou-el-left{width:calc(780*var(--ou-u));flex:0 0 calc(780*var(--ou-u));padding:0}
.elementor-9815 .ou-req-w{width:calc(792*var(--ou-u));flex:0 0 calc(792*var(--ou-u))}
.elementor-9815 .ou-el-block{position:relative}
.elementor-9815 .ou-el-elig{height:calc(412*var(--ou-u))}
.elementor-9815 .ou-el-time{height:calc(254*var(--ou-u));width:calc(630*var(--ou-u))}
.elementor-9815 .ou-elig .ou-h3{font-family:'weizmann-regular',serif;font-weight:400;font-size:calc(48.84*var(--ou-u));line-height:calc(36*var(--ou-u));margin:0;color:#163C50}
.elementor-9815 .ou-elig .ou-blank{height:calc(36*var(--ou-u));margin:0}
.elementor-9815 .ou-elig .ou-p{font-family:'Benton Sans WSoS',sans-serif;font-size:calc(22*var(--ou-u));line-height:calc(36*var(--ou-u));letter-spacing:calc(.22*var(--ou-u));margin:0;color:#163C50;font-weight:400}
.elementor-9815 .ou-elig .ou-bold{font-weight:700}
.elementor-9815 .ou-rule{position:absolute;left:0;width:calc(780*var(--ou-u));height:calc(2.5*var(--ou-u));background:#163C50;display:block}
.elementor-9815 .ou-rule-t{left:calc(-4*var(--ou-u));width:calc(634*var(--ou-u))}
.elementor-9815 .ou-req{margin:0;padding:0;list-style:none;counter-reset:req}
.elementor-9815 .ou-req li{counter-increment:req;position:relative;padding-left:calc(26*var(--ou-u));font-family:'Benton Sans WSoS',sans-serif;font-size:calc(22*var(--ou-u));line-height:calc(54*var(--ou-u));letter-spacing:calc(-.22*var(--ou-u));color:#163C50;font-weight:400}
.elementor-9815 .ou-req li::before{content:counter(req) ".";position:absolute;left:0;font-weight:700}
/* ---- CTA (Figma 1:333, panel 1752x256 radius 46, page y5656-5912) ---- */
.elementor-9815 .ou-cta{position:relative;overflow:visible}
.elementor-9815 .ou-cta-panel{position:absolute;left:50%;transform:translateX(-50%);top:0;width:calc(1752*var(--ou-u));height:calc(256*var(--ou-u));border-radius:calc(46*var(--ou-u));padding:0;overflow:hidden}
.elementor-9815 .ou-cta-row{position:absolute;left:calc(66*var(--ou-u));top:calc(54*var(--ou-u));width:calc(1624.5*var(--ou-u));padding:0;align-items:center}
.elementor-9815 .ou-cta-head{width:calc(921.5*var(--ou-u));flex:0 0 calc(921.5*var(--ou-u))}
.elementor-9815 .ou-cta-right{flex:0 0 auto;align-items:flex-end;padding:0}
.elementor-9815 .ou-cta-link{width:calc(319.5*var(--ou-u));flex:0 0 calc(319.5*var(--ou-u))}
.elementor-9815 .ou-cta-link p{margin:0;font-family:'Benton Sans WSoS',sans-serif;font-size:calc(25.207*var(--ou-u));line-height:calc(36.356*var(--ou-u));font-weight:700}
.elementor-9815 .ou-cta-link a{color:#FCF4F0;text-decoration:none}
.elementor-9815 .ou-cta-arrow{flex:0 0 calc(50*var(--ou-u));width:calc(50*var(--ou-u))}
.elementor-9815 .ou-cta-arrow img{display:block;width:calc(50*var(--ou-u));height:auto}
/* the thin cyan rule between the headline and the link (Figma 1:344) */
.elementor-9815 .ou-cta-row::before{content:'';position:absolute;left:calc(1177.5*var(--ou-u));top:calc(4.5*var(--ou-u));width:calc(2*var(--ou-u));height:calc(110.44*var(--ou-u));background:#F06133}

/* CTA decorative shapes, sitting on the cream above the panel */
.elementor-9815 .ou-cta-shapes{position:absolute;left:50%;transform:translateX(-50%);top:0;width:calc(1752*var(--ou-u));height:0;padding:0;pointer-events:none;overflow:visible}
.elementor-9815 .ou-cta-shapes .elementor-widget{position:absolute;margin:0}
.elementor-9815 .ou-cta-shapes img{display:block;width:100%;height:auto}
.elementor-9815 .ou-cs-leaf{left:calc(85.59*var(--ou-u));top:calc(-171.86*var(--ou-u));width:calc(88.775*var(--ou-u));transform:rotate(-121.2deg)}
.elementor-9815 .ou-cs-d7{left:calc(225.48*var(--ou-u));top:calc(-112.04*var(--ou-u));width:calc(65.306*var(--ou-u));transform:rotate(97.6deg)}
.elementor-9815 .ou-cs-dot{left:calc(1431*var(--ou-u));top:calc(-73*var(--ou-u));width:calc(85*var(--ou-u))}
/* ---- Footer (Figma 1:349, navy 377 tall, page y6034-6411) ---- */
.elementor-9815 .ou-footer-wrap{padding:calc(122*var(--ou-u)) 0 0}
.elementor-9815 .ou-footer{position:relative;height:calc(377*var(--ou-u));padding:0}
.elementor-9815 .ou-footer .elementor-widget{position:absolute;margin:0}
.elementor-9815 .ou-footer img{display:block;height:auto}
.elementor-9815 .ou-f-wsos{left:calc(99*var(--ou-u));top:calc(76*var(--ou-u));width:calc(141*var(--ou-u))}
.elementor-9815 .ou-f-wsos img{width:calc(141*var(--ou-u))}
.elementor-9815 .ou-f-wis{left:calc(1681*var(--ou-u));top:calc(69*var(--ou-u));width:calc(139*var(--ou-u))}
.elementor-9815 .ou-f-wis img{width:calc(139*var(--ou-u))}
.elementor-9815 .ou-f-txt{font-family:'Benton Sans WSoS',sans-serif;font-size:calc(19.8*var(--ou-u));line-height:calc(32.4*var(--ou-u));letter-spacing:calc(-.198*var(--ou-u));color:#FCF4F0;font-weight:400}
.elementor-9815 .ou-f-txt p{margin:0}
.elementor-9815 .ou-f-txt a{color:#FCF4F0;text-decoration:none}
/* Client asked for both footer columns to share a baseline. Figma staggers them
   (contact 138, address 202.7 - so the address's first line meets the contact's last);
   this lifts the address to the contact's top instead. */
.elementor-9815 .ou-f-addr-w{left:calc(98*var(--ou-u));top:calc(138*var(--ou-u));width:calc(328.5*var(--ou-u))}
.elementor-9815 .ou-f-contact-w{left:calc(525*var(--ou-u));top:calc(138*var(--ou-u));width:calc(317*var(--ou-u))}
.elementor-9815 .ou-mail{font-weight:700;text-decoration:underline;text-underline-offset:.12em}
.elementor-9815 .ou-f-legal-w{left:calc(525*var(--ou-u));top:calc(241.6*var(--ou-u));width:calc(363.6*var(--ou-u))}
.elementor-9815 .ou-f-legal a{text-decoration:none}
.elementor-9815 .ou-f-social{left:calc(1452*var(--ou-u));top:calc(250*var(--ou-u));width:auto;padding:0;flex-direction:row}
.elementor-9815 .ou-f-social .elementor-widget{position:relative;width:calc(40.352*var(--ou-u));flex:0 0 calc(40.352*var(--ou-u))}
.elementor-9815 .ou-f-social img{width:calc(40.352*var(--ou-u));height:calc(40.352*var(--ou-u))}

/* hover pulse on footer icons and links, per the agreed animation system */
.elementor-9815 .ou-f-social a,.elementor-9815 .ou-f-txt a{display:inline-block;transition:transform .3s}
.elementor-9815 .ou-f-social a:hover,.elementor-9815 .ou-f-txt a:hover{animation:ouPulse 1s ease-in-out}
@media (prefers-reduced-motion:reduce){.elementor-9815 .ou-f-social a:hover,.elementor-9815 .ou-f-txt a:hover{animation:none}}
/* Elementor writes container/image widths at high specificity - triple the class to win */
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{width:fit-content;max-width:none}
.elementor-9815 .ou-hero-shapes .elementor-widget img,.elementor-9815 .ou-cta-shapes .elementor-widget img,.elementor-9815 .ou-about-shapes .elementor-widget img{width:100%}

/* ---- Hero shape drift: exact keyframes from Figma get_motion_context (1:255),
   3.5s infinite, cubic-bezier(.45,0,.55,1). 0% and 100% are identical, so the
   loop is seamless as authored - no alternate trick needed here. ---- */
@keyframes ouDriftCapsule{0%{translate:0 0}50%{translate:-19.863px 16.219px}100%{translate:0 0}}
@keyframes ouDriftLeaf{0%{translate:0 0}50%{translate:.909px -1.771px}100%{translate:0 0}}
@keyframes ouDriftCircle{0%{translate:0 0}50%{translate:-6.183px -6.491px}100%{translate:0 0}}
@keyframes ouDriftBlob{0%{translate:0 0}50%{translate:25.137px -7.957px}100%{translate:0 0}}
.elementor-9815 .ou-s-capsule{animation:ouDriftCapsule 3.5s cubic-bezier(.45,0,.55,1) infinite}
.elementor-9815 .ou-s-leaf{animation:ouDriftLeaf 3.5s cubic-bezier(.45,0,.55,1) infinite}
.elementor-9815 .ou-s-circle{animation:ouDriftCircle 3.5s cubic-bezier(.45,0,.55,1) infinite}
.elementor-9815 .ou-s-blob{animation:ouDriftBlob 3.5s cubic-bezier(.45,0,.55,1) infinite}
@media (prefers-reduced-motion:reduce){
 .elementor-9815 .ou-s-capsule,.elementor-9815 .ou-s-leaf,
 .elementor-9815 .ou-s-circle,.elementor-9815 .ou-s-blob{animation:none}
}

/* ---- Values that live in the Elementor panel (gaps, min-heights, paddings)
   do not see --ou-u, so restate them here so the whole desktop layout scales
   as one piece below 1920. Classes are repeated to beat Elementor's own rules. ---- */
@media (min-width:768px){
.elementor-9815 .ou-header.ou-header.ou-header{min-height:calc(150*var(--ou-u))}
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:calc(862*var(--ou-u))}
.elementor-9815 .ou-about.ou-about.ou-about{min-height:calc(1664*var(--ou-u))}
.elementor-9815 .ou-step2.ou-step2.ou-step2{min-height:calc(690*var(--ou-u))}
.elementor-9815 .ou-photos.ou-photos.ou-photos{min-height:calc(627*var(--ou-u));padding:calc(99*var(--ou-u)) calc(84*var(--ou-u)) calc(84*var(--ou-u));gap:calc(66*var(--ou-u))}
.elementor-9815 .ou-elig.ou-elig.ou-elig{min-height:calc(916*var(--ou-u))}
.elementor-9815 .ou-cta.ou-cta.ou-cta{min-height:calc(256*var(--ou-u))}
.elementor-9815 .ou-footer.ou-footer.ou-footer{min-height:calc(377*var(--ou-u));height:calc(377*var(--ou-u))}
.elementor-9815 .ou-footer-wrap.ou-footer-wrap.ou-footer-wrap{padding-top:calc(122*var(--ou-u))}
.elementor-9815 .ou-step1.ou-step1.ou-step1{padding:calc(30*var(--ou-u)) calc(96*var(--ou-u)) calc(114*var(--ou-u));gap:calc(67*var(--ou-u))}
.elementor-9815 .ou-about-row.ou-about-row.ou-about-row{gap:calc(260*var(--ou-u))}
.elementor-9815 .ou-about-cols.ou-about-cols.ou-about-cols{gap:calc(35*var(--ou-u))}
.elementor-9815 .ou-s1-cols.ou-s1-cols.ou-s1-cols{gap:calc(37*var(--ou-u))}
.elementor-9815 .ou-s2-cols.ou-s2-cols.ou-s2-cols{gap:calc(37*var(--ou-u))}
.elementor-9815 .ou-el-row.ou-el-row.ou-el-row{gap:calc(136*var(--ou-u))}
.elementor-9815 .ou-el-left.ou-el-left.ou-el-left{gap:calc(38*var(--ou-u))}
.elementor-9815 .ou-accs.ou-accs.ou-accs{gap:calc(9*var(--ou-u))}
.elementor-9815 .ou-cta-right.ou-cta-right.ou-cta-right{gap:calc(47*var(--ou-u))}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{gap:calc(26.06*var(--ou-u))}
.elementor-9815 .ou-nav.ou-nav .elementor-nav-menu--main>li:not(:last-child){margin-right:calc(74*var(--ou-u))}
.elementor-9815 .ou-nav.ou-nav .elementor-item{font-size:calc(18*var(--ou-u))}
.elementor-9815 .ou-logo-left.ou-logo-left img{width:calc(298*var(--ou-u))}
.elementor-9815 .ou-logo-right.ou-logo-right img{width:calc(167*var(--ou-u))}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{width:calc(141*var(--ou-u))}
.elementor-9815 .ou-f-wis.ou-f-wis img{width:calc(139*var(--ou-u))}
.elementor-9815 .ou-cta-arrow.ou-cta-arrow img{width:calc(50*var(--ou-u))}
.elementor-9815 .ou-f-social img,.elementor-9815 .ou-f-social .elementor-widget{width:calc(40.352*var(--ou-u));flex:0 0 calc(40.352*var(--ou-u))}
.elementor-9815 .ou-f-social img{height:calc(40.352*var(--ou-u))}
}

/* Typography and boxes set through the Elementor panel also need the scale unit. */
@media (min-width:768px){
.elementor-9815 .ou-hero-copy.ou-hero-copy.ou-hero-copy{width:calc(720*var(--ou-u));margin:calc(172*var(--ou-u)) 0 0 calc(93*var(--ou-u))}
.elementor-9815 .ou-hero-eyebrow.ou-hero-eyebrow .elementor-heading-title{font-size:calc(31*var(--ou-u));line-height:calc(26*var(--ou-u));letter-spacing:calc(-0.62*var(--ou-u))}
.elementor-9815 .ou-hero-head.ou-hero-head{margin-top:0}
.elementor-9815 .ou-hero-head.ou-hero-head .elementor-heading-title{font-size:calc(101.43*var(--ou-u));line-height:calc(102.445*var(--ou-u))}
.elementor-9815 .ou-hero-sub.ou-hero-sub{margin-top:0}
.elementor-9815 .ou-hero-sub.ou-hero-sub .elementor-heading-title{font-size:calc(37.278*var(--ou-u));line-height:calc(50.396*var(--ou-u));letter-spacing:calc(0.7456*var(--ou-u))}
.elementor-9815 .ou-hero-btn.ou-hero-btn>.elementor-widget-container{margin-top:calc(34*var(--ou-u))}
.elementor-9815 .ou-hero-btn.ou-hero-btn .elementor-button{width:calc(361*var(--ou-u));font-size:calc(22.627*var(--ou-u));line-height:calc(37.026*var(--ou-u));letter-spacing:calc(-0.2263*var(--ou-u));padding:calc(7.199*var(--ou-u)) calc(20.57*var(--ou-u)) calc(11.313*var(--ou-u));border-radius:calc(22.627*var(--ou-u))}
.elementor-9815 .ou-about-head.ou-about-head .elementor-heading-title{font-size:calc(65.118*var(--ou-u));line-height:calc(67.174*var(--ou-u));letter-spacing:calc(-0.6512*var(--ou-u))}
.elementor-9815 .ou-about-cols.ou-about-cols p,
.elementor-9815 .ou-s1-cols.ou-s1-cols p,
.elementor-9815 .ou-s2-cols.ou-s2-cols p{font-size:calc(22*var(--ou-u));line-height:calc(36*var(--ou-u))}
.elementor-9815 .ou-about-cols.ou-about-cols p{letter-spacing:calc(-0.16*var(--ou-u));margin-bottom:calc(36*var(--ou-u))}
.elementor-9815 .ou-s1-cols.ou-s1-cols p,.elementor-9815 .ou-s2-cols.ou-s2-cols p{letter-spacing:calc(0.22*var(--ou-u))}
.elementor-9815 .ou-s2-cols.ou-s2-cols p.lead{margin-bottom:calc(36*var(--ou-u))}
.elementor-9815 .ou-cta-head.ou-cta-head .elementor-heading-title{font-size:calc(52.983*var(--ou-u));line-height:calc(58.739*var(--ou-u));letter-spacing:calc(-0.5298*var(--ou-u))}
}

@media (min-width:768px){
/* Elementor containers default to width:100%, so the CTA's right-hand block
   stretched the full row instead of shrinking to its content. */
.elementor-9815 .ou-cta-right.ou-cta-right.ou-cta-right{width:auto;max-width:none;flex:0 0 auto}
}
/* ================= MOBILE (Figma frame 1:689, 390x5447) =================
   Elementor writes its own rules at (0,3,0)+, so layout properties here
   repeat the class to win on specificity rather than using !important. */
@media (max-width:767px){

/* header: 72 tall, logos left, burger right */
.elementor-9815 .ou-header.ou-header.ou-header{min-height:72px;padding:0 24px}
.elementor-9815 .ou-logo-left.ou-logo-left img{width:128px}
.elementor-9815 .ou-logo-right.ou-logo-right img{width:84px}
.elementor-9815 .ou-nav.ou-nav{margin-top:0}

/* hero: 709 tall, copy at 27/119, shapes, button at 620 */
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:709px}
.elementor-9815 .ou-hero-copy.ou-hero-copy.ou-hero-copy{width:350px;max-width:calc(100% - 40px);margin:119px 0 0 27px;gap:24px}
.elementor-9815 .ou-hero-eyebrow.ou-hero-eyebrow .elementor-heading-title{font-size:18px;line-height:22px;font-weight:700;letter-spacing:0}
.elementor-9815 .ou-hero-head.ou-hero-head .elementor-heading-title{font-size:44px;line-height:1.05}
.elementor-9815 .ou-hero-head.ou-hero-head{margin-top:0}
.elementor-9815 .ou-hero-sub.ou-hero-sub .elementor-heading-title{font-size:18px;line-height:1.4;letter-spacing:0}
.elementor-9815 .ou-hero-sub.ou-hero-sub{margin-top:0;max-width:330px}
.elementor-9815 .ou-hero-btn.ou-hero-btn{margin:0;position:absolute;left:50%;transform:translateX(-50%);top:620px;width:340px}
.elementor-9815 .ou-hero-btn .elementor-button{width:340px;justify-content:center;font-size:16px;line-height:24px;border-radius:22px;padding:12px 20px}
.elementor-9815 .ou-hero-shapes{left:66px;top:451.39px;width:318.484px;transform:none;aspect-ratio:318.484/203.403}

/* about: cream, pt34 / pl27 / pr26, one column at 15/1.6 */
.elementor-9815 .ou-about.ou-about.ou-about{min-height:0;padding:34px 26px 0 27px}
.elementor-9815 .ou-about-row.ou-about-row.ou-about-row{position:static;left:auto;top:auto;width:100%;max-width:none;flex-direction:column;gap:16px;height:auto}
.elementor-9815 .ou-about-head.ou-about-head{width:100%;flex:0 0 auto}
.elementor-9815 .ou-about-head.ou-about-head.ou-about-head .elementor-heading-title{font-size:32px;line-height:1.15;letter-spacing:0}
.elementor-9815 .ou-about-cols.ou-about-cols.ou-about-cols{flex-direction:column;gap:0;width:100%;height:auto;flex:0 0 auto}
.elementor-9815 .ou-about-c1.ou-about-c1,.elementor-9815 .ou-about-c2.ou-about-c2{width:100%;flex:0 0 auto;max-width:339px}
.elementor-9815 .ou-about-cols p{font-size:15px;line-height:1.6;letter-spacing:0;margin-bottom:24px}
.elementor-9815 .ou-about-shapes{display:none}
.elementor-9815 .ou-about-photo.ou-about-photo{position:static;transform:none;width:100%;height:180px;border-radius:20px;margin-top:24px}

/* step 1 */
.elementor-9815 .ou-step1.ou-step1.ou-step1{padding:38px 24px 40px;gap:24px}
.elementor-9815 .ou-s1-row.ou-s1-row.ou-s1-row{flex-direction:column;height:auto;max-width:none;gap:24px;align-items:flex-start}
.elementor-9815 .ou-s1-head.ou-s1-head{height:auto;flex:0 0 auto;width:100%}
.elementor-9815 .ou-step-label{font-family:'Benton Sans WSoS',sans-serif;font-weight:700;font-size:14px;line-height:normal;text-transform:uppercase;margin-bottom:8px}
.elementor-9815 .ou-step-title{font-size:32px;line-height:1.15;letter-spacing:0}
.elementor-9815 .ou-s1-cols.ou-s1-cols.ou-s1-cols{flex-direction:column;height:auto;flex:0 0 auto;width:100%;gap:24px}
.elementor-9815 .ou-s1-c1.ou-s1-c1,.elementor-9815 .ou-s1-c2.ou-s1-c2{width:100%;flex:0 0 auto}
.elementor-9815 .ou-s1-cols p{font-size:15px;line-height:1.5;letter-spacing:0}

/* step 2 */
.elementor-9815 .ou-step2.ou-step2.ou-step2{min-height:0;padding:48px 24px}
.elementor-9815 .ou-s2-row.ou-s2-row.ou-s2-row{position:static;transform:none;flex-direction:column;height:auto;max-width:none;gap:24px;align-items:flex-start}
.elementor-9815 .ou-s2-head.ou-s2-head{height:auto;flex:0 0 auto;width:100%}
.elementor-9815 .ou-s2-cols.ou-s2-cols.ou-s2-cols{flex-direction:column;height:auto;flex:0 0 auto;width:100%;gap:24px}
.elementor-9815 .ou-s2-c1.ou-s2-c1,.elementor-9815 .ou-s2-c2.ou-s2-c2{width:100%;flex:0 0 auto}
.elementor-9815 .ou-s2-cols p{font-size:15px;line-height:1.5;letter-spacing:0}
.elementor-9815 .ou-s2-cols p.lead{margin-bottom:16px}

}
@media (max-width:767px){

/* photo row -> stacked, 180 tall, radius 20 */
.elementor-9815 .ou-photos.ou-photos.ou-photos{flex-direction:column;min-height:0;padding:24px 20px;gap:16px}
.elementor-9815 .ou-ph.ou-ph{width:100%;flex:0 0 auto;height:180px;border-radius:20px}

/* eligibility / timeline / requirements -> stacked lists with orange bullets */
.elementor-9815 .ou-elig.ou-elig.ou-elig{min-height:0;padding:10px 24px 40px}
.elementor-9815 .ou-el-row.ou-el-row.ou-el-row{position:static;flex-direction:column;width:100%;gap:30px}
.elementor-9815 .ou-el-left.ou-el-left{width:100%;flex:0 0 auto;gap:30px}
.elementor-9815 .ou-req-w.ou-req-w{width:100%;flex:0 0 auto}
.elementor-9815 .ou-el-elig.ou-el-elig,.elementor-9815 .ou-el-time.ou-el-time{height:auto;width:100%}
.elementor-9815 .ou-rule{display:none}
.elementor-9815 .ou-elig .ou-blank{display:none}
.elementor-9815 .ou-elig .ou-h3{font-size:32px;line-height:1.15;margin-bottom:16px}
.elementor-9815 .ou-elig .ou-p{font-size:14px;line-height:1.4;letter-spacing:0;margin-bottom:12px;padding-left:16px;position:relative}
.elementor-9815 .ou-elig .ou-p:last-child{margin-bottom:0}
.elementor-9815 .ou-elig .ou-p::before{content:'•';position:absolute;left:0;color:#F06133;font-weight:700}
.elementor-9815 .ou-req li{font-size:14px;line-height:28px;padding-left:22px;letter-spacing:-.16px}

/* CTA: panel 340x359 radius 33 at 25/50 */
.elementor-9815 .ou-cta.ou-cta.ou-cta{min-height:454px}
.elementor-9815 .ou-cta-panel{left:25px;transform:none;top:50px;width:340px;height:359px;border-radius:33px}
.elementor-9815 .ou-cta-row{left:21px;top:26px;width:302px;flex-direction:column;align-items:flex-start;height:auto}
.elementor-9815 .ou-cta-row::before{display:none}
.elementor-9815 .ou-cta-head.ou-cta-head{width:100%;flex:0 0 auto}
.elementor-9815 .ou-cta-head.ou-cta-head.ou-cta-head .elementor-heading-title{font-size:32px;line-height:1.15;letter-spacing:-.32px}
.elementor-9815 .ou-cta-right{position:absolute;left:2px;top:252px;width:294px;gap:24px}
.elementor-9815 .ou-cta-link{width:232px;flex:0 0 232px}
.elementor-9815 .ou-cta-link p{font-size:16px;line-height:24px}
.elementor-9815 .ou-cta-arrow.ou-cta-arrow{flex:0 0 36.255px;width:36.255px}
.elementor-9815 .ou-cta-arrow img{width:36.255px}


/* footer: stacked, 285 tall */
.elementor-9815 .ou-footer-wrap.ou-footer-wrap{padding:60px 0 0}
.elementor-9815 .ou-footer.ou-footer.ou-footer{height:auto;min-height:285px;padding:32px 24px 40px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.elementor-9815 .ou-footer .elementor-widget{position:relative;left:auto;top:auto;width:auto}
.elementor-9815 .ou-f-wsos{order:1}
.elementor-9815 .ou-f-wis{order:2}
.elementor-9815 .ou-f-contact-w{order:3;width:100%}
.elementor-9815 .ou-f-addr-w{order:4;width:100%}
.elementor-9815 .ou-f-legal-w{order:5;width:100%}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{order:6;position:relative;left:auto;top:auto;width:100%;gap:16px}
.elementor-9815 .ou-f-txt{font-size:14px;line-height:22px}
.elementor-9815 .ou-f-social img,.elementor-9815 .ou-f-social .elementor-widget{width:32px;flex:0 0 32px}
.elementor-9815 .ou-f-social img{height:32px}

/* the travelling drift is disruptive on a narrow screen */
.elementor-9815 .ou-s-capsule,.elementor-9815 .ou-s-leaf,
.elementor-9815 .ou-s-circle,.elementor-9815 .ou-s-blob{animation:none}

}
@media (max-width:767px){
/* As on desktop, the Figma nav bar sits INSIDE the 709-tall hero, not above it:
   hero = 709 - 72 header, and everything inside shifts up by the same 72. */
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:637px}
.elementor-9815 .ou-hero-copy.ou-hero-copy.ou-hero-copy{margin-top:47px}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{position:absolute;left:50%;transform:translateX(-50%);top:548px;width:340px;margin:0}

.elementor-9815 .ou-header.ou-header.ou-header{min-height:72px;height:72px;padding:0 24px}
.elementor-9815 .ou-header>.e-con-inner{min-height:72px}
}
@media (max-width:767px){
/* the button is absolute inside .ou-hero-copy (which Elementor makes relative),
   so its top is measured from the copy block at 47, not from the hero. */
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:501px;left:-2px;transform:none;height:48px}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn .elementor-button{width:340px;height:48px;font-size:16px;line-height:24px;letter-spacing:0;padding:12px 20px;border-radius:24px;display:flex;align-items:center;justify-content:center}
}
@media (max-width:767px){
/* make the hero the offset parent so the button's top is hero-relative */
.elementor-9815 .ou-hero-copy.ou-hero-copy.ou-hero-copy{position:static}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:548px;left:25px}

/* accordions: 44 tall, radius 18, px20 py8, 16px title (Figma 1:873) */
.elementor-9815 .ou-accs.ou-accs.ou-accs{width:100%;align-items:stretch;gap:5px}
.elementor-9815 .ou-accw.ou-accw{width:100%;flex:0 0 auto}
.elementor-9815 .ou-acc{width:100%;border-radius:18px}
.elementor-9815 .ou-acc summary{height:44px;padding-left:20px;padding-right:20px}
.elementor-9815 .ou-acc-1 summary,.elementor-9815 .ou-acc-2 summary,.elementor-9815 .ou-acc-3 summary{padding-left:20px;padding-right:20px}
.elementor-9815 .ou-acc-t{font-size:16px}
.elementor-9815 .ou-acc-i{width:8px;height:16px;flex:0 0 8px}
.elementor-9815 .ou-acc-b{font-size:14px;line-height:22px;letter-spacing:0}
.elementor-9815 .ou-acc-1 .ou-acc-b,.elementor-9815 .ou-acc-2 .ou-acc-b{padding:2px 20px 16px}
.elementor-9815 .ou-acc-3 .ou-acc-b{padding:2px 20px 16px;font-size:14px;line-height:22px}
.elementor-9815 .ou-acc-b p{margin-bottom:16px}
}
@media (max-width:767px){
/* Elementor puts the widget's _margin on .elementor-widget-container, so the
   desktop 34px top margin was still pushing the button inside its own box. */
.elementor-9815 .ou-hero-btn .elementor-widget-container{margin:0;padding:0}

/* footer: two logos share a row, tighter rhythm */
.elementor-9815 .ou-footer.ou-footer.ou-footer{flex-wrap:wrap;gap:14px 20px;padding:28px 24px 32px;align-items:flex-end}
.elementor-9815 .ou-f-wsos.ou-f-wsos,.elementor-9815 .ou-f-wis.ou-f-wis{width:auto;flex:0 0 auto}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{width:112px}
.elementor-9815 .ou-f-wis.ou-f-wis img{width:74px}
.elementor-9815 .ou-f-addr-w,.elementor-9815 .ou-f-contact-w,.elementor-9815 .ou-f-legal-w{width:100%;flex:0 0 100%}
.elementor-9815 .ou-f-txt{font-size:13px;line-height:20px}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{gap:14px;flex:0 0 100%}
.elementor-9815 .ou-f-social img,.elementor-9815 .ou-f-social .elementor-widget{width:28px;flex:0 0 28px}
.elementor-9815 .ou-f-social img{height:28px}
}
@media (max-width:767px){
/* Elementor writes the widget's _margin onto .elementor-widget-container at a
   specificity a single class cannot beat - repeat the class and use the child combinator. */
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn>.elementor-widget-container{margin:0;padding:0}
}
@media (max-width:767px){
/* header: logo, logo, burger on one 72-tall row (Figma 1:734) */
.elementor-9815 .ou-header.ou-header.ou-header>.e-con-inner{display:flex;flex-direction:row;align-items:center;height:72px;gap:0;flex-wrap:nowrap;padding:0}
.elementor-9815 .ou-logo-left.ou-logo-left{order:1;flex:0 0 auto;align-self:center}
.elementor-9815 .ou-logo-right.ou-logo-right{order:2;flex:0 0 auto;align-self:center;margin-left:clamp(16px,8vw,81px)}
.elementor-9815 .ou-nav.ou-nav{order:3;flex:0 0 auto;margin-left:auto;width:auto}
.elementor-9815 .ou-nav .elementor-menu-toggle{background:transparent;padding:0;margin-right:-.25em}
.elementor-9815 .ou-nav .elementor-menu-toggle svg,.elementor-9815 .ou-nav .elementor-menu-toggle img{width:32px;height:auto;display:block}
/* the dropdown is a panel under the bar, not a full-screen overlay */
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{top:0 !important}
}
@media (max-width:767px){
/* the nav widget keeps the full menu list in the DOM for the dropdown, so it
   must be pinned to the toggle's width or it pushes the page sideways */
.elementor-9815 .ou-nav.ou-nav.ou-nav{width:36px;max-width:36px;flex:0 0 36px;position:static}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{position:absolute;left:0;right:0;width:100%;top:100% !important}
.elementor-9815 .ou-header.ou-header.ou-header{position:relative}
}
/* Site furniture: lift the accessibility button clear of WPConsent's floating
   cookie button, which also parks itself bottom-left (same fix as the postdoc page). */
/* The plugin already pins this button with an inline top:120px/left:20px, and
   WPConsent's cookie button sits at the BOTTOM left - they never collide here.
   Setting bottom as well as top on a position:fixed element stretched the wrapper
   the full height of the viewport, and its 50% radius + blue border drew it as a
   tall thin ellipse down the page. Keep bottom:auto. */
/* Stack the two floating controls bottom-left: accessibility above WPConsent's
   cookie button (which sits at left:20 bottom:20, 44x44). `top:auto` is essential -
   the plugin pins this element with an inline top:120px, and setting only `bottom`
   on a position:fixed element stretches it the full height of the viewport, where
   its 50% radius and blue border draw a tall ellipse down the page. */
body.page-id-9815 #acwp-toolbar-btn-wrap{top:auto;bottom:76px;left:20px;z-index:10000}
/* Hero shapes carry a rotation in Figma that the first build missed: the leaf's
   671x588 wrapper around a 638x263 shape is the signature of a 36deg turn. */
.elementor-9815 .ou-s-leaf{transform:rotate(36.04deg)}
.elementor-9815 .ou-s-blob{transform:rotate(48.99deg)}

@media (max-width:767px){

}

/* ---- Entrance for the rotated decorative shapes ----
   Elementor's fadeInDown/fadeInUp keyframes end on `transform: none`, which wipes
   a shape's rotate() for the whole animation and snaps it back at the end - that is
   why these read as "straight, then suddenly tilted". This settle animates the
   separate `translate` property instead, so `transform: rotate()` survives untouched.
   The widgets are set to fadeIn so the fallback is opacity-only if this CSS ever drops. */
@keyframes ouSettle{0%{opacity:0;translate:0 -20px}100%{opacity:1;translate:0 0}}
.elementor-9815 .ou-about-leaf.animated,
.elementor-9815 .ou-about-circle.animated,
.elementor-9815 .ou-cs-leaf.animated,
.elementor-9815 .ou-cs-d7.animated,
.elementor-9815 .ou-cs-dot.animated{
 animation-name:ouSettle;animation-duration:.9s;
 animation-timing-function:cubic-bezier(.22,.61,.36,1);animation-fill-mode:both}
@media (prefers-reduced-motion:reduce){
 .elementor-9815 .ou-about-leaf.animated,.elementor-9815 .ou-about-circle.animated,
 .elementor-9815 .ou-cs-leaf.animated,.elementor-9815 .ou-cs-d7.animated,
 .elementor-9815 .ou-cs-dot.animated{animation:none;opacity:1}
}
/* ===== Client review, mobile - 2026-09-10 ===== */
@media (max-width:767px){

/* 1. the burger inherited Elementor's default dark icon colour (#33373d) and was
      invisible on the navy bar. The icon is an inline <svg>, so colour it directly. */
.elementor-9815 .ou-nav .elementor-menu-toggle{color:#FCF4F0}
.elementor-9815 .ou-nav .elementor-menu-toggle svg,
.elementor-9815 .ou-nav .elementor-menu-toggle svg *{fill:#FCF4F0;stroke:#FCF4F0}

/* 2. tighter rhythm in the hero copy (client asked for less than the design's 24) */
.elementor-9815 .ou-hero-copy.ou-hero-copy.ou-hero-copy{gap:14px}

/* 3-4. shapes and button both lifted; the hero shortens by the same 24 so the
        space under the button stays as designed (41px) instead of growing. */

.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:536px}
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:633px}

/* 5. About text read as two blocks because the last paragraph of the first widget
      had no bottom margin - even the rhythm so it flows as one column. */
.elementor-9815 .ou-about-c1 p:last-child{margin-bottom:24px}

/* 6. the photo container had position:static, so its inner absolutely-positioned
      widget escaped to the section and lost both its height and its radius. */
.elementor-9815 .ou-about-photo.ou-about-photo{position:relative;transform:none;left:auto;top:auto;width:100%;height:180px;border-radius:20px;overflow:hidden;margin-top:24px}
.elementor-9815 .ou-about-photo img{height:100%;top:0;object-position:50% 40%}

}
@media (max-width:767px){
/* single source of truth for the mobile shape stage (Figma inner box 1:699) */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{left:81px;top:379.39px;width:288.912px;aspect-ratio:288.912/182.912}
}

/* ===== Mobile visual pass against the 390 design render - 2026-09-10 ===== */
@media (max-width:767px){

/* About photo is 333x368 in the design (near square), not a 180 band.
   Text above it sits 16 away; the section closes 28 below it. */
.elementor-9815 .ou-about.ou-about.ou-about{padding-bottom:28px}
.elementor-9815 .ou-about-photo.ou-about-photo{height:368px;margin-top:16px}
.elementor-9815 .ou-about-photo img{object-position:50% 50%}

/* Footer: the design puts the two logos in one row - institute LEFT, WSoS RIGHT,
   the reverse of desktop - then the address and contact side by side, then the
   legal line, then the icons. 288 tall in total. */
.elementor-9815 .ou-footer.ou-footer.ou-footer{display:flex;flex-wrap:wrap;align-items:flex-start;padding:30px 30px 46px;gap:0;height:auto;min-height:0}
.elementor-9815 .ou-f-wis.ou-f-wis{order:1;width:135px;flex:0 0 135px;margin:0}
.elementor-9815 .ou-f-wis.ou-f-wis img{width:135px}
.elementor-9815 .ou-f-wsos.ou-f-wsos{order:2;width:85px;flex:0 0 85px;margin:0 0 0 37px}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{width:85px}
.elementor-9815 .ou-f-addr-w{order:3;width:42%;flex:0 0 42%;margin:70px 0 0}
.elementor-9815 .ou-f-contact-w{order:4;width:52%;flex:0 0 52%;margin:70px 0 0 6%}
.elementor-9815 .ou-f-legal-w{order:5;width:100%;flex:0 0 100%;margin:19px 0 0}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{order:6;width:100%;flex:0 0 100%;margin:20px 0 0;gap:12px}
.elementor-9815 .ou-f-txt{font-size:13px;line-height:16.5px}
.elementor-9815 .ou-f-social img,.elementor-9815 .ou-f-social .elementor-widget{width:24px;flex:0 0 24px}
.elementor-9815 .ou-f-social img{height:24px}

}
/* the mobile footer uses the HORIZONTAL institute lockup, not the tall desktop mark */
.elementor-9815 .ou-f-wis-m{display:none}
@media (max-width:767px){
.elementor-9815 .ou-f-wis-m{display:block}
.elementor-9815 .ou-f-wis{display:none}
/* grid keeps the four rows honest regardless of DOM order */
.elementor-9815 .ou-footer.ou-footer.ou-footer{display:grid;grid-template-columns:139px 1fr;column-gap:29px;row-gap:0;padding:30px 30px 46px;height:auto;min-height:0;align-items:start}
.elementor-9815 .ou-footer .elementor-widget{position:relative;left:auto;top:auto;margin:0;width:auto}
.elementor-9815 .ou-f-wis-m{grid-column:1;grid-row:1;width:135px}
.elementor-9815 .ou-f-wis-m img{width:135px;height:auto}
.elementor-9815 .ou-f-wsos.ou-f-wsos{grid-column:2;grid-row:1;width:85px}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{width:85px;height:auto}
.elementor-9815 .ou-f-addr-w{grid-column:1;grid-row:2;margin-top:70px}
.elementor-9815 .ou-f-contact-w{grid-column:2;grid-row:2;margin-top:70px}
.elementor-9815 .ou-f-legal-w{grid-column:1 / -1;grid-row:3;margin-top:19px}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{grid-column:1 / -1;grid-row:4;margin-top:20px;display:flex;gap:12px;width:auto}
}
@media (max-width:767px){
/* the grid reset `.ou-footer .elementor-widget{margin:0}` is three classes and was
   cancelling the row margins below it - repeat the item classes to outrank it. */
.elementor-9815 .ou-f-addr-w.ou-f-addr-w.ou-f-addr-w{margin-top:70px}
.elementor-9815 .ou-f-contact-w.ou-f-contact-w.ou-f-contact-w{margin-top:70px}
.elementor-9815 .ou-f-legal-w.ou-f-legal-w.ou-f-legal-w{margin-top:19px}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social{margin-top:20px}
/* the CTA section already leaves 45 under its panel; the design has 46 in total */
.elementor-9815 .ou-footer-wrap.ou-footer-wrap.ou-footer-wrap{padding-top:0}
}
@media (max-width:767px){
/* design footer logo row is 28 tall - size by height so both marks share a baseline */
.elementor-9815 .ou-f-wis-m img{height:28px;width:auto}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{height:28px;width:auto}
.elementor-9815 .ou-f-wis-m,.elementor-9815 .ou-f-wsos.ou-f-wsos{width:auto;line-height:0}
}
@media (max-width:767px){
/* the headline widget's container still carried the desktop _margin (20px) on top of
   the 14px flex gap, so the eyebrow-to-headline space was 34 plus leading. */
.elementor-9815 .ou-hero-head.ou-hero-head.ou-hero-head>.elementor-widget-container{margin-top:0}
.elementor-9815 .ou-hero-sub.ou-hero-sub.ou-hero-sub>.elementor-widget-container{margin-top:0}
}
@media (max-width:767px){
/* Figma's mobile frame sets these in Benton Sans Regular, not Bold - the cyan lead
   paragraphs in Step 2 keep their colour but lose the weight, and Step 1 carries no
   bold at all on mobile. Desktop keeps both, which is what the desktop frame shows. */
.elementor-9815 .ou-s2-cols p.lead strong{font-weight:400}
.elementor-9815 .ou-s1-cols strong{font-weight:400}
}
@media (max-width:767px){
/* Figma mobile CTA (1:928) holds TWO shapes and no circle - the navy dot belongs to
   the desktop frame only. Group sits at (35,-13) in the section; each shape is placed
   on its rotated bounding-box centre, then rotated, exactly as on desktop. */
.elementor-9815 .ou-cta-shapes.ou-cta-shapes{left:0;top:0;width:390px;transform:none}
.elementor-9815 .ou-cs-leaf.ou-cs-leaf{left:64.14px;top:-18.72px;width:36.648px;transform:rotate(-121.2deg)}
.elementor-9815 .ou-cs-d7.ou-cs-d7{left:121.89px;top:5.98px;width:26.959px;transform:rotate(97.6deg)}
.elementor-9815 .ou-cs-dot{display:none}
}
@media (max-width:767px){
/* Footer measured off the 390 render: institute lockup 134x29 at x31, WSoS 72x25 at
   x178 (centres aligned, not tops); text is Benton Sans REGULAR 10.041/16.431 with
   -0.1004 tracking, in two 139.638 columns 28 apart. */
.elementor-9815 .ou-footer.ou-footer.ou-footer{grid-template-columns:139.638px 1fr;column-gap:28px;padding-left:30px;padding-right:30px}
.elementor-9815 .ou-f-wis-m,.elementor-9815 .ou-f-wsos.ou-f-wsos{align-self:center}
.elementor-9815 .ou-f-wis-m img{width:134px;height:auto}
.elementor-9815 .ou-f-wsos.ou-f-wsos img{width:72px;height:auto}
.elementor-9815 .ou-f-wsos.ou-f-wsos{margin-left:-19.6px}
.elementor-9815 .ou-f-txt{font-size:10.041px;line-height:16.431px;letter-spacing:-.1004px;font-weight:400}
.elementor-9815 .ou-f-addr-w,.elementor-9815 .ou-f-contact-w{width:139.638px}
/* the email keeps its bold underline, as in the design */
.elementor-9815 .ou-mail{font-weight:700;text-decoration:underline}
}
@media (max-width:767px){
/* Elementor centres an image inside its widget box; the footer grid cell is wider
   than the logo, so both marks have to be pinned to the left of their cell. */
.elementor-9815 .ou-f-wis-m,.elementor-9815 .ou-f-wsos.ou-f-wsos{text-align:left}
.elementor-9815 .ou-f-wis-m img,.elementor-9815 .ou-f-wsos.ou-f-wsos img{margin-left:0;margin-right:auto;display:block}
}
@media (max-width:767px){
/* design social row is 24 tall (5377-5400 on the render) */
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social .elementor-widget{width:24px;flex:0 0 24px}
.elementor-9815 .ou-f-social.ou-f-social.ou-f-social img{width:24px;height:24px}
}
@media (max-width:767px){
/* Figma leaves 11px between the lowest shape ink (609) and the button (620). The copy
   above is now 44 tighter than the design, so the shapes AND the button move up together
   by 36 - that keeps the 11px buffer visible instead of the button touching the leaf. */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{top:343.39px}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:512px}
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:601px}
}
@media (max-width:767px){
/* Robustness: the stage had only `aspect-ratio` for its height, and the shapes were
   positioned with percentages measured against it. If a mobile browser resolves that
   height late or not at all, every percentage top collapses and the shapes drop.
   Give the stage an explicit height and place the shapes in absolute px instead
   (values are the Figma mobile frame's own: 1:700 / 1:706 / 1:712 / 1:718). */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{height:182.912px;aspect-ratio:auto}
.elementor-9815 .ou-s-capsule.ou-s-capsule{left:5.43px;top:96.55px;width:79.323px}
.elementor-9815 .ou-s-leaf.ou-s-leaf{left:8.79px;top:32.39px;width:207.578px}
.elementor-9815 .ou-s-circle.ou-s-circle{left:91.58px;top:-30.88px;width:55.266px}
.elementor-9815 .ou-s-blob.ou-s-blob{left:102.08px;top:-1.36px;width:217.46px}
/* and give the buffer above the button real room so it reads on a small screen */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{top:329.39px}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:512px}
}
/* ---- Mobile scroll-down arrow (Figma 1:723) - mobile frame only ---- */
.elementor-9815 .ou-hero-arrow{display:none}
@media (max-width:767px){
.elementor-9815 .ou-hero-arrow{display:block;position:absolute;left:29px;top:332.39px;width:28px;margin:0;z-index:2;pointer-events:none}
.elementor-9815 .ou-hero-arrow svg{display:block;width:28px;height:35px}
/* exact keyframes from get_motion_context on 1:723: a 45s cycle - fade in at 11%,
   three 8px hops, fade out at ~35%, then rest until the loop comes round again. */
@keyframes ouArrowFade{0%{opacity:0}11.111%{opacity:0;animation-timing-function:ease-out}12.444%{opacity:1}33.333%{opacity:1;animation-timing-function:ease-in}34.667%{opacity:0}100%{opacity:0}}
@keyframes ouArrowHop{0%{translate:0 0}12.444%{translate:0 0;animation-timing-function:ease-in-out}13.778%{translate:0 8px;animation-timing-function:ease-in-out}15.111%{translate:0 0;animation-timing-function:ease-in-out}16.444%{translate:0 8px;animation-timing-function:ease-in-out}17.778%{translate:0 0;animation-timing-function:ease-in-out}19.111%{translate:0 8px;animation-timing-function:ease-in-out}20.444%{translate:0 0}100%{translate:0 0}}
.elementor-9815 .ou-hero-arrow{animation:ouArrowFade 45s linear infinite, ouArrowHop 45s linear infinite}
@media (prefers-reduced-motion:reduce){.elementor-9815 .ou-hero-arrow{animation:none;opacity:1}}
}
/* ================= Client round 1 - 2026-09-11 ================= */

/* 1. Header had Elementor's boxed 1720 and no padding, so below 1720 the container
      went full width and the logos sat flush against both edges. Scaled padding
      reproduces the design's 100px margin at 1920 and shrinks with everything else. */
@media (min-width:768px){
.elementor-9815 .ou-header.ou-header.ou-header{padding-left:calc(100*var(--ou-u));padding-right:calc(100*var(--ou-u))}
}

/* 2. Eligibility / Timeline rules: they carried literal inline tops, so they never
      scaled below 1920, and they sat far from the text above and almost touching the
      text below. Now scaled, and lifted 14 so each rule sits centred in its gap. */
.elementor-9815 .ou-rule-a{top:calc(198*var(--ou-u))}
.elementor-9815 .ou-rule-b{top:calc(306*var(--ou-u))}
.elementor-9815 .ou-rule-c{top:calc(126*var(--ou-u))}
.elementor-9815 .ou-rule-d{top:calc(198*var(--ou-u))}
.elementor-9815 .ou-rule{width:calc(780*var(--ou-u));height:calc(2.5*var(--ou-u))}
.elementor-9815 .ou-rule-t{left:calc(-4*var(--ou-u));width:calc(634*var(--ou-u))}

/* 7. CTA dot: the design's 85x84 box holds a 74.7 circle offset 5.6 to the right.
      I had stretched the image to the whole box, so it read too big and pushed too
      far into the panel instead of resting on its edge. */
.elementor-9815 .ou-cs-dot{left:calc(1436.6*var(--ou-u));width:calc(74.7*var(--ou-u))}

@media (max-width:767px){
/* 4. mobile header: design has the logos 13 apart, starting at x28 */
.elementor-9815 .ou-header.ou-header.ou-header{padding:0 28px}
.elementor-9815 .ou-logo-left.ou-logo-left img{width:134px}
.elementor-9815 .ou-logo-right.ou-logo-right{margin-left:13px}
.elementor-9815 .ou-logo-right.ou-logo-right img{width:72px}

/* 6. shapes back down so they sit just above the button, as the design has them */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{top:357px}

/* 5. mobile menu panel (Figma 1:1130): dark panel, bold cream items, a white rule
      under every one of them - it was inheriting Elementor's white dropdown. */
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{background-color:#313131}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown a.elementor-item{color:#FCF4F0;font-family:'Benton Sans WSoS',sans-serif;font-weight:700;font-size:18px;line-height:1;padding:16px 28px 8px;border:0}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown li:not(:last-child) a.elementor-item,
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown li:last-child a.elementor-item{border-bottom:0}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown li{position:relative;margin:0 28px}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown li a.elementor-item{padding-left:0;padding-right:0}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown li::after{content:'';display:block;height:1px;background:#FFFFFF;width:100%}
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown a.elementor-item:focus{background:transparent;color:#FCF4F0}
}
/* the menu-close script is behaviour only - keep its widget out of the flow */
.elementor-9815 .ou-menu-script{display:none}

@media (max-width:767px){
/* the widget's own menu typography (weight 400) outranked the dropdown rule */
.elementor-9815 .ou-nav.ou-nav.ou-nav .elementor-nav-menu--dropdown a.elementor-item{font-weight:700}
}

@media (max-width:767px){
/* Figma mobile hero, measured off the render with the text region excluded:
   subhead ink ends 372, shapes paint 423-609 (span 187), button 620.
   So 51 above the shapes and 11 below. Reproduced here against the tightened copy. */
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{top:379px}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{top:533px}
.elementor-9815 .ou-hero.ou-hero.ou-hero{min-height:622px}
}

/* the contact block is wrapped in an <a> set to inline-block for the hover pulse,
   which sits on the text baseline and rode 4px higher than the plain address block.
   display:block puts both first lines on the same baseline. */
.elementor-9815 .ou-f-contact-w .ou-f-txt a{display:block}

@media (max-width:767px){
/* Menu panel spacing from the Figma frame (1:1130, 390x594):
   first item ink at 130 from the panel top, last rule at 476 leaving 117 below,
   item pitch 53.5 - text sits 26 under the rule above it and 7 above its own. */
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{padding-top:29px;padding-bottom:117px}
.elementor-9815 .ou-nav.ou-nav.ou-nav .elementor-nav-menu--dropdown a.elementor-item{padding-top:26px;padding-bottom:7px}
}
/* Footer columns aligned on their LAST baseline rather than their first, so they stay
   aligned even if one column wraps to a different number of lines. Both blocks end
   at 235 in a 377 footer, hence bottom:142. */
@media (min-width:768px){
.elementor-9815 .ou-f-addr-w,.elementor-9815 .ou-f-contact-w{top:auto;bottom:calc(142*var(--ou-u))}
}
/* Address column aligned to the LEGAL line (Accessibility Statement | Privacy Policy),
   the last line of the right-hand column, so both columns finish level at the bottom
   rather than at the contact block's last line. Legal sits at 246-270 in a 377 footer. */
@media (min-width:768px){
.elementor-9815 .ou-f-addr-w{top:auto;bottom:calc(103*var(--ou-u))}
}

@media (max-width:767px){
/* The sticky header is cloned in the DOM, so a fixed 72px top left a strip of page
   showing between the bar and the panel once the page was scrolled. top:100% pins the
   panel to whichever header instance is actually on screen, whatever its height. */
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{top:100% !important;margin-top:0}
}

@media (max-width:767px){
/* The sticky header exists twice in the DOM (Elementor clones it). Positioning the
   panel against 'the header' therefore depends on which instance it lives in, and once
   the page was scrolled a strip of the page showed between the bar and the panel.
   Pinning the panel to the viewport instead makes it flush under the bar either way. */
.elementor-9815 .ou-nav .elementor-nav-menu--dropdown{position:fixed !important;top:72px !important;left:0 !important;right:0 !important;width:100% !important;z-index:9998}
}


/* ================== client round 2 - 2026-09-16 ================== */

/* 1. Mobile was pinned to a 390px viewport. The hero button, the hero shape stage,
      the CTA panel and the CTA shape stage all carried literal pixels taken off the
      390 frame, so on a 360 or 375 phone they stuck out past the right edge, the
      document scrolled sideways and the page background showed as a white strip.
      min(<390 value>, <the same value expressed in vw>) keeps 390 pixel-exact and
      shrinks proportionally below it. Nothing changes at 390 and above. */
@media (max-width:767px){
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{left:min(25px,6.4103vw);width:min(340px,87.1795vw);transform:none}
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn .elementor-button{width:100%}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{left:min(81px,20.7692vw);width:min(288.912px,74.08vw);height:min(182.912px,46.9vw)}
.elementor-9815 .ou-hero-arrow{left:min(29px,7.4359vw)}
.elementor-9815 .ou-cta-shapes.ou-cta-shapes{left:0;width:100%}
.elementor-9815 .ou-cta-panel.ou-cta-panel{left:min(25px,6.4103vw);width:min(340px,87.1795vw)}
.elementor-9815 .ou-cta-row.ou-cta-row{left:6.1765%;width:88.8235%}
.elementor-9815 .ou-cta-right.ou-cta-right{left:0.6623%;width:97.351%;flex-wrap:nowrap}
.elementor-9815 .ou-cta-link.ou-cta-link{width:auto;flex:1 1 auto;min-width:0}
}

/* 2. Hero rhythm. The two rules written to scale these margins never applied: a stray
      character had merged each body.elementor-page-9815 into a dead 'n.elementor-9815 ...', so the
      headline kept Elementor's literal 20px and the subhead its literal 8px at every
      width, and both gaps therefore grew proportionally larger the narrower the
      viewport got. Client round 2 asked to tighten eyebrow -> headline and open up
      headline -> subhead: 26px and 31px of ink-to-ink white at 1920, and scaling now.
      The two moves cancel, so the button and the shapes below do not move. */
@media (min-width:768px){
.elementor-9815 .ou-hero-head.ou-hero-head.ou-hero-head.ou-hero-head>.elementor-widget-container{margin-top:calc(12*var(--ou-u))}
.elementor-9815 .ou-hero-sub.ou-hero-sub.ou-hero-sub.ou-hero-sub>.elementor-widget-container{margin-top:calc(16*var(--ou-u))}
}

/* 3. About heading. Its ink top already matched the body column's to within 2px, but a
      65px display face beside 22px body text reads as sitting lower than it measures.
      Lifted 10px at 1920 so the pair reads as aligned, per the client. */
@media (min-width:768px){
.elementor-9815 .ou-about-head.ou-about-head.ou-about-head{margin-top:calc(-10*var(--ou-u))}
}

/* 4. Accordion titles. The arrows are centred in the 104px pill and align-items:center
      centres the title's line box - but this face hangs 9.7px below the baseline
      against 6.9px above the cap, so the ink block lands low against the arrow.
      4px up at 1920 puts the whole ink block on the arrow's centre. */
.elementor-9815 .ou-acc-t{position:relative;top:calc(-4*var(--ou-u))}

/* 5. Footer text level with the social icons. The icons run 250-290.3 inside the 377
      footer (centre 270.1) while the legal line's cap-to-baseline block sat at
      249.8-264.8 (centre 257.3), so the icon row read as sitting lower than the text.
      All three text blocks move down 13 together, which preserves the address-to-legal
      alignment agreed in round 1 and puts the text's centre on the icon row's. */
@media (min-width:768px){
.elementor-9815 .ou-f-contact-w.ou-f-contact-w{top:calc(151*var(--ou-u));bottom:auto}
.elementor-9815 .ou-f-legal-w.ou-f-legal-w{top:calc(254.6*var(--ou-u))}
.elementor-9815 .ou-f-addr-w.ou-f-addr-w{top:auto;bottom:calc(90*var(--ou-u))}
}

/* 1b. The four hero shapes carried literal pixels for left/top/width on mobile - the
       values of the 390 frame - so once the stage above was allowed to shrink they
       stayed at full size and spilled out of it. These are the same percentages the
       desktop stage uses (the two stages have the identical 1.5795 aspect ratio), so
       they resolve to exactly today's pixels at 390 and scale with the stage below it. */
@media (max-width:767px){
.elementor-9815 .ou-hero-shapes.ou-hero-shapes .ou-s-capsule.ou-s-capsule{left:1.878%;top:52.786%;width:27.456%}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes .ou-s-leaf.ou-s-leaf{left:3.043%;top:17.71%;width:71.849%}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes .ou-s-circle.ou-s-circle{left:31.697%;top:-16.885%;width:19.13%}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes .ou-s-blob.ou-s-blob{left:35.333%;top:-0.746%;width:75.269%}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes .elementor-widget img{width:100%;height:auto}
}

/* 6. Not reported, found while checking 1440: the desktop menu wrapped 'Contact' onto a
      second line on any laptop under about 1500. The nav was the one block on the page
      that never scaled - Elementor writes the item size as
      '...element-w000002 .elementor-nav-menu .elementor-item' (five classes) and the gap
      as the custom property --e-nav-menu-horizontal-menu-item-margin, and both outranked
      the scaled rules written for them, so a fixed 1012px menu sat in a gap between the
      logos that shrinks with the viewport. Same values at 1920, scaling below it. */
@media (min-width:768px){
.elementor-9815 .ou-nav.ou-nav.ou-nav{--e-nav-menu-horizontal-menu-item-margin:calc(37*var(--ou-u))}
.elementor-9815 .ou-nav.ou-nav.ou-nav .elementor-nav-menu--main .elementor-item{font-size:calc(18*var(--ou-u))}
}

/* 7. The same hero rhythm on mobile, at the client's request. Ink-to-ink at 390 the
      gaps were 22.1 above the headline and 20.7 below it; the desktop round moved its
      pair by x0.766 and x1.342, and the same ratios give 17.1 and 27.7 here. The copy
      block is a flex column with a single 14px gap, so the two moves are made on the
      widget containers - which the mobile block zeroes, hence the extra class. Head up
      5, subhead down 7, so the subhead itself only shifts 2px and the shapes, the
      button and the 622px hero (all absolutely positioned) do not move at all. */
@media (max-width:767px){
.elementor-9815 .ou-hero-head.ou-hero-head.ou-hero-head.ou-hero-head>.elementor-widget-container{margin-top:-5px}
.elementor-9815 .ou-hero-sub.ou-hero-sub.ou-hero-sub.ou-hero-sub>.elementor-widget-container{margin-top:7px}
}

/* 8. Mobile: the button and the shape stage were anchored to a fixed left inset taken
      off the 390 frame, so on a phone WIDER than 390 (412 is the common Android width)
      all the extra room landed on the right - 25 left against 47 right on the button.
      The button is centred in the design (25/25 at 390), so centre it properly; the
      stage is deliberately offset right (81/20.1 at 390), so it keeps that offset and
      just takes half the extra width, which holds the group optically centred.
      max() picks the vw term below 390 (where both shrink) and the centred term above
      it; at exactly 390 the two are equal, so nothing moves at the design width. */
@media (max-width:767px){
.elementor-9815 .ou-hero-btn.ou-hero-btn.ou-hero-btn{left:50%;transform:translateX(-50%);width:min(340px,calc(100% - 50px))}
.elementor-9815 .ou-hero-shapes.ou-hero-shapes{left:max(20.7692vw,calc(50% - 114px))}
.elementor-9815 .ou-cta-panel.ou-cta-panel{left:50%;transform:translateX(-50%);width:min(340px,calc(100% - 50px))}
}

/* 9. Client: the header links sit on the same baseline as the right-hand logo. The WSoS
      lockup is a 167x56 PNG whose ink runs to its last row, so its baseline is the image
      bottom - page y103 at 1920 - while the links' baseline was at 92. The nav's top
      margin carries the difference: 22 -> 33. Scaled, so it holds at every width, and
      the links stay clear of the 150px header (link box ends 107, left logo ends 108). */
@media (min-width:768px){
.elementor-9815 .ou-nav.ou-nav{margin-top:calc(44*var(--ou-u))}
}

/* 10. More air under the headline again, per the client. Ink-to-ink the headline-to-
       subhead gap goes 31.4 -> 40.4 on desktop (container margin 16 -> 25) and 27.7 ->
       35.3 on mobile (7 -> 15), the same 1.27x on both. Only the subhead moves: on
       desktop the button follows it down 9px inside a hero whose height is fixed at 862
       and whose shapes sit in the other half of the row, so nothing collides and the
       page stays 6411; on mobile the button and the shapes are absolutely positioned
       and do not move at all. */
@media (min-width:768px){
.elementor-9815 .ou-hero-sub.ou-hero-sub.ou-hero-sub.ou-hero-sub>.elementor-widget-container{margin-top:calc(25*var(--ou-u))}
}
@media (max-width:767px){
.elementor-9815 .ou-hero-sub.ou-hero-sub.ou-hero-sub.ou-hero-sub>.elementor-widget-container{margin-top:15px}
}

/* 11. Mobile CTA card: navy space under the link and arrow on every phone. The card was
       a fixed 359px box with the link absolutely positioned 252px down, so wherever the
       link wrapped to a third line (anything narrower than about 388) it ran into the
       card's bottom edge. Now the card is in flow with a 359px minimum, a 31px bottom
       padding, and the link pushed to the bottom with margin-top:auto - so the link
       always sits 31 above the card edge, a longer link grows up into the empty navy
       instead of down through the edge, and the card only grows if the content truly
       needs more than 359. At 390 every box lands on the same pixel as before
       (card 50-409, link 328-378, section 454). */
@media (max-width:767px){
.elementor-9815 .ou-cta.ou-cta.ou-cta{min-height:454px;height:auto;padding:50px 0 45px}
.elementor-9815 .ou-cta-panel.ou-cta-panel.ou-cta-panel{position:relative;top:auto;left:auto;transform:none;margin:0 auto;width:min(340px,calc(100% - 50px));height:auto;min-height:359px;padding:26px 17px 31px 21px}
.elementor-9815 .ou-cta-row.ou-cta-row.ou-cta-row{position:relative;left:auto;top:auto;width:auto;height:auto;flex:1 1 auto}
.elementor-9815 .ou-cta-right.ou-cta-right.ou-cta-right{position:relative;left:auto;top:auto;width:auto;margin:auto 6px 0 2px}
}

/* 12. Screens wider than 1920. The page scales down with --ou-u but nothing stopped it
       growing: the unit caps at 1px, yet everything positioned in percent of a section
       (the hero shape stage, the right-aligned accordions, ...) kept stretching with the
       viewport while the text stayed pinned 93px from the left edge and the header sat
       in its own centred 1720 box. At 2560 the shapes grew to 1178px and ran 167px out
       of the bottom of the hero, the hero copy sat at x93 under a logo at x413, and the
       Step 1 accordions drifted 233px right of their text.
       Fix: cap every section's content at the 1920 layout and centre it. A side border
       in the section's own colour does it without touching the layout inside - absolute
       children are placed against the padding box, which sits inside the border, and
       percentages resolve against it too - so each section renders exactly as it does
       in a 1920 window, centred, with its background still running edge to edge. No
       clip-path or shadow, so the shapes that deliberately overhang a section above or
       below are untouched. The footer wrapper is cream around a navy footer, so the
       border goes on the footer itself. The header is already boxed and lands its logo
       on the same x as the hero copy (413 at 2560), so it is left alone. */
@media (min-width:1921px){
.elementor-9815 .ou-hero.ou-hero.ou-hero,
.elementor-9815 .ou-step2.ou-step2.ou-step2,
.elementor-9815 .ou-footer.ou-footer.ou-footer{border-left:calc((100vw - 1920px) / 2) solid #163C50;border-right:calc((100vw - 1920px) / 2) solid #163C50;box-sizing:border-box}
.elementor-9815 .ou-about.ou-about.ou-about,
.elementor-9815 .ou-step1.ou-step1.ou-step1,
.elementor-9815 .ou-photos.ou-photos.ou-photos,
.elementor-9815 .ou-elig.ou-elig.ou-elig,
.elementor-9815 .ou-cta.ou-cta.ou-cta{border-left:calc((100vw - 1920px) / 2) solid #FCF4F0;border-right:calc((100vw - 1920px) / 2) solid #FCF4F0;box-sizing:border-box}
}


/* ================== client round 4 - 2026-09-23 (live page) ================== */

/* About: the client added 'Payment is in NIS, and the exact dollar equivalent is subject
   to the exchange rate.' under the fellowship amount, which made the right column two
   lines longer than the left (17 against 15), and asked for the two to be balanced.
   The columns are split on paragraph boundaries and no split of the four paragraphs
   comes out even, so the balance comes from the measure: the split point moves 30px
   left (414 / 474 instead of 444 / 444), which adds exactly one line to the left column
   and takes one from the right - both 16 lines, ending on the same baseline. The outer
   edges and the 35px gutter are unchanged. The window that balances is 18-50px, so 30
   leaves margin either side for rendering differences; verified at 1920, 1440, 1366,
   1280 and 1024 (wrapping is identical at every desktop width because everything scales
   with --ou-u).
   The extra line would have cut the text-to-photo gap from 98 to 62, so the photo, the
   leaf and circle that sit on its corner, and the section all move down 36 together. */
@media (min-width:768px){
.elementor-9815 .ou-about-c1.ou-about-c1{width:calc(414*var(--ou-u));flex:0 0 calc(414*var(--ou-u))}
.elementor-9815 .ou-about-c2.ou-about-c2{width:calc(474*var(--ou-u));flex:0 0 calc(474*var(--ou-u))}
.elementor-9815 .ou-about.ou-about.ou-about.ou-about{min-height:calc(1700*var(--ou-u))}
.elementor-9815 .ou-about-photo.ou-about-photo{top:calc(801.9*var(--ou-u))}
.elementor-9815 .ou-about-leaf.ou-about-leaf{top:calc(660.96*var(--ou-u))}
.elementor-9815 .ou-about-circle.ou-about-circle{top:calc(689.08*var(--ou-u))}
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Benton Sans WSoS';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://info.weizmann.ac.il/wp-content/uploads/2024/01/BentonSans-Regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Benton Sans WSoS';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://info.weizmann.ac.il/wp-content/uploads/2024/01/BentonSans-Medium.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'weizmann-regular';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://info.weizmann.ac.il/wp-content/uploads/2024/01/Weizmann-Regular-1.woff2') format('woff2');
}
/* End Custom Fonts CSS */