.elementor-10 .elementor-element.elementor-element-9bd9f5d{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-10 .elementor-element.elementor-element-5dc2fdb{text-align:start;}.elementor-10 .elementor-element.elementor-element-5dc2fdb img{width:23%;}.elementor-10 .elementor-element.elementor-element-1d992ed{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );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-10 .elementor-element.elementor-element-9368049{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-9368049 .elementor-menu-toggle{margin:0 auto;}.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;line-height:18px;letter-spacing:1.4px;}.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item{color:#F5F5F5;fill:#F5F5F5;}.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item:focus{color:#E6A549;fill:#E6A549;}.elementor-10 .elementor-element.elementor-element-9368049 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#E6A549;}.elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle{color:#F7F5F0BA;}.elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle svg{fill:#F7F5F0BA;}.elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle:hover, .elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle:focus{color:var( --e-global-color-secondary );}.elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle:hover svg, .elementor-10 .elementor-element.elementor-element-9368049 div.elementor-menu-toggle:focus svg{fill:var( --e-global-color-secondary );}.elementor-10 .elementor-element.elementor-element-d3162c0{--display:flex;}.elementor-10 .elementor-element.elementor-element-5bce980{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-10 .elementor-element.elementor-element-51f3872{--display:flex;--margin-top:18px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10 .elementor-element.elementor-element-7cabd21{--display:flex;--justify-content:center;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#0D11171A;--border-color:#0D11171A;--border-radius:5px 5px 5px 5px;box-shadow:3px 5px 23px 2px rgba(13.000000000000002, 17.00000000000001, 23, 0.10196078431372549);--padding-top:62px;--padding-bottom:62px;--padding-left:62px;--padding-right:62px;}.elementor-10 .elementor-element.elementor-element-7cabd21:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-7cabd21 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group{padding-right:calc( 15px/2 );padding-left:calc( 15px/2 );margin-bottom:23px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-form-fields-wrapper{margin-left:calc( -15px/2 );margin-right:calc( -15px/2 );margin-bottom:-23px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group.recaptcha_v3-bottomleft, .elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-10 .elementor-element.elementor-element-bfca37c .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-bfca37c .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-10 .elementor-element.elementor-element-bfca37c .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-type-html{padding-bottom:0px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group .elementor-field{color:#6B6F78;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group .elementor-field, .elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-subgroup label{font-family:"Inter", Sans-serif;font-size:11px;font-weight:400;text-transform:uppercase;line-height:18px;letter-spacing:0.4px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#0D111733;border-width:0px 0px 1px 0px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#0D111733;border-width:0px 0px 1px 0px;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-field-group .elementor-select-wrapper::before{color:#0D111733;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-button{font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:23px;letter-spacing:0.8px;}.elementor-10 .elementor-element.elementor-element-bfca37c .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-button[type="submit"]{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-bfca37c{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-10 .elementor-element.elementor-element-1f10890{--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;}.elementor-10 .elementor-element.elementor-element-4107cba{--display:flex;--justify-content:flex-start;}.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu .elementor-item{font-family:"Cormorant Garamond", Sans-serif;font-size:28px;font-weight:500;line-height:32px;}.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item{color:#F7F4EF;fill:#F7F4EF;}.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item:hover,
					.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item:focus{color:#AA8755;fill:#AA8755;}.elementor-10 .elementor-element.elementor-element-997050e .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#AA8755;}.elementor-10 .elementor-element.elementor-element-b1280e1{--display:flex;--justify-content:flex-start;}.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:16px;font-weight:300;line-height:12px;}.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item{color:#F7F4EF;fill:#F7F4EF;}.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item:focus{color:#AA8755;fill:#AA8755;}.elementor-10 .elementor-element.elementor-element-972e816 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#AA8755;}.elementor-10 .elementor-element.elementor-element-8609a19{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-10 .elementor-element.elementor-element-c2a0921{margin:23px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-icon-list-icon-size:23px;--e-icon-list-icon-align:right;--e-icon-list-icon-margin:0 0 0 calc(var(--e-icon-list-icon-size, 1em) * 0.25);--icon-vertical-align:center;--icon-vertical-offset:0px;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-icon i{color:#F7F4EF66;transition:color 0.3s;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-icon svg{fill:#F7F4EF66;transition:fill 0.3s;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:#9A7B4F;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:#9A7B4F;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-icon{padding-inline-end:2px;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-size:13px;font-weight:400;text-transform:uppercase;line-height:16px;letter-spacing:0.5px;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-text{color:#F7F4EF66;transition:color 0.3s;}.elementor-10 .elementor-element.elementor-element-c2a0921 .elementor-icon-list-item:hover .elementor-icon-list-text{color:#9A7B4F;}.elementor-10 .elementor-element.elementor-element-6549251{--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:center;--align-items:center;}.elementor-10 .elementor-element.elementor-element-f7f05fd{--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;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#F7F4EF1A;--border-color:#F7F4EF1A;--padding-top:23px;--padding-bottom:32px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-d286f00{--display:flex;--justify-content:flex-start;}.elementor-10 .elementor-element.elementor-element-9126094{--display:flex;--justify-content:flex-start;}.elementor-10 .elementor-element.elementor-element-395272a{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:12px;font-weight:300;text-transform:uppercase;line-height:12px;}.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item{color:#F7F5F069;fill:#F7F5F069;}.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item:hover,
					.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item:focus{color:#AA8755;fill:#AA8755;}.elementor-10 .elementor-element.elementor-element-b2007de .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#AA8755;}@media(min-width:768px){.elementor-10 .elementor-element.elementor-element-5bce980{--content-width:48%;}.elementor-10 .elementor-element.elementor-element-51f3872{--content-width:62%;}.elementor-10 .elementor-element.elementor-element-1f10890{--content-width:1280px;}.elementor-10 .elementor-element.elementor-element-6549251{--content-width:1280px;}.elementor-10 .elementor-element.elementor-element-f7f05fd{--content-width:1280px;}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-10 .elementor-element.elementor-element-5dc2fdb img{width:69%;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-10 .elementor-element.elementor-element-9368049{--nav-menu-icon-size:21px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-10 .elementor-element.elementor-element-8609a19{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-10 .elementor-element.elementor-element-f7f05fd{--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;}.elementor-10 .elementor-element.elementor-element-9126094{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-10 .elementor-element.elementor-element-395272a{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-10 .elementor-element.elementor-element-395272a.e-con{--align-self:flex-start;}.elementor-10 .elementor-element.elementor-element-b2007de.elementor-element{--align-self:flex-start;}}/* Start custom CSS *//* ----------------------------------------------------
       DESIGN SYSTEM VARIABLES 
       Replacing Tailwind config with native CSS variables
    ---------------------------------------------------- */
    :root {
        --c-navy: #1B2A4A;
        --c-gold: #9A7B4F;
        --c-cream: #F7F4EF;
        --c-charcoal: #20242E;
        --c-slate: #4d5056;
        
        --font-serif: "Cormorant Garamond", serif;
        --font-sans: "Inter", sans-serif;
    }

    /* ----------------------------------------------------
       GLOBAL RESETS & SMOOTH SCROLLING (LENIS)
    ---------------------------------------------------- */
    *, *::before, *::after {
        box-sizing: border-box;
    }

    html.lenis { height: auto; }
    .lenis.lenis-smooth { scroll-behavior: auto; }
    .lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
    .lenis.lenis-stopped { overflow: hidden; }
    .lenis.lenis-scrolling iframe { pointer-events: none; }

    /* Override Elementor body defaults to match the theme */
    body {
        background-color: var(--c-navy); 
        color: var(--c-cream); 
        overflow-x: hidden;
        margin: 0;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    ::selection { 
        background: var(--c-gold); 
        color: var(--c-cream); 
    }

    /* Hide Scrollbar for cleaner look */
    ::-webkit-scrollbar { display: none; }
    * { -ms-overflow-style: none; scrollbar-width: none; }

    /* ----------------------------------------------------
       ELEMENTOR SPECIFIC OVERRIDES
    ---------------------------------------------------- */
    /* Ensure Elementor Header floats over the Hero Section transparently */
    #nav-header {
        position: absolute !important;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 50;
        background-color: transparent !important;
    }

    /* ----------------------------------------------------
       GLOBAL OVERRIDES (Targeting Elementor Elements)
    ---------------------------------------------------- */
    /* Add a subtle text shadow to Elementor's nav menu items for legibility over art */
    .elementor-nav-menu .elementor-item {
        text-shadow: 0px 2px 10px rgba(0,0,0,0.6) !important;
    }


/* ----------------------------------------------------
       PRELOADER CURTAIN
    ---------------------------------------------------- */
    #loader {
        position: fixed;
        inset: 0;
        background: var(--c-cream);
        z-index: 999999; /* Cover Elementor header during load */
        display: flex;
        justify-content: center;
        align-items: center;
        color: var(--c-charcoal);
    }

    .loader-text {
        font-family: var(--font-sans);
        font-size: 0.875rem;
        letter-spacing: 0.3em;
        text-transform: uppercase;
        font-weight: 300;
        margin: 0;
    }

.cta-container a:hover {
    color: #fff !important;
}
    /* ----------------------------------------------------
       HERO SECTION ARCHITECTURE
    ---------------------------------------------------- */
    .smooth-wrapper {
        width: 100%;
    }

    .hero-pin {
        position: relative;
        width: 100%;
        height: 100vh;
        height: 100dvh; /* Dynamic viewport height fix for mobile browser bars */
        overflow: hidden;
        background-color: var(--c-charcoal);
    }

    .layer-full-bleed {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
    }

    .hero-artwork {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        /* Start scaled up for the load-in animation */
        transform: scale(1.1); 
        transform-origin: center center;
    }

    /* ----------------------------------------------------
       GRADIENTS & OVERLAYS
    ---------------------------------------------------- */
    .gradient-overlay {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 10;
    }

    .ui-gradient-bottom {
        background: linear-gradient(to top, rgba(32, 36, 46, 0.9) 10%, rgba(32, 36, 46, 0.6) 55%, rgba(32, 36, 46, 0) 100%);
    }

    .ui-gradient-top {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        height: 10rem;
        background: linear-gradient(to bottom, rgba(27, 42, 74, 0.8) 0%, transparent 100%);
        pointer-events: none;
        z-index: 10;
    }

    /* ----------------------------------------------------
       TYPOGRAPHY & UI GRID (Bottom Anchored)
    ---------------------------------------------------- */
    .hero-ui-container {
        display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    margin: 0 auto;
    padding: 0 24px;
    position: absolute;
    bottom: 8vh; /* Anchors over the bottom protective gradient */
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    }

    .title-overflow-wrapper {
        display: flex;
    justify-content: center;
    width: 100%;
    text-align: center;
    
    }

    .monumental-title {
        font-family: var(--font-serif);
        font-size: 16vw; /* Monumental scaling */
        line-height: 0.65;
        letter-spacing: -0.05em;
        color: var(--c-cream);
        text-align: center;
    margin: 0 auto;
    }

    .details-grid {
        display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.55rem; /* Generous breathing room between text elements */
    max-width: 980px;
    margin: 0.5rem auto 0 auto;
    width: 100%;
    }

#hero-pin .hero-subline {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: clamp(1.55rem, 2.9vw, 1.80rem);
    font-weight: 400;
    font-style: italic;
    color: rgba(255, 255, 255, 0.9);
    letter-spacing: 0.03em;
    line-height: 1.4;
    margin: 0;
}

    .detail-heading {
        font-family: var(--font-sans);
        font-size: 1.55rem;
        color: var(--c-cream);
        font-weight: 300;
        letter-spacing: -0.025em;
        line-height: 1.375;
        margin: 0;
    }

    .detail-paragraph {
        font-family: var(--font-sans);
        font-size: 0.95rem;
        color: rgba(247, 244, 239, 0.7);
        line-height: 1.625;
        max-width: 24rem;
        font-weight: 300;
        letter-spacing: 0.025em;
        margin: 0;
    }

    /* Call to Action Button */
    .cta-container {
        display: flex;
        justify-content: flex-start;
    }

    .cta-button {
        display: inline-flex;
        align-items: center;
        gap: 1rem;
        color: var(--c-cream);
        font-family: var(--font-sans);
        font-size: 10px;
        text-transform: uppercase;
        letter-spacing: 0.2em;
        font-weight: 500;
        text-decoration: none;
        cursor: pointer;
    }

    .cta-line {
        width: 3rem;
        height: 1px;
        background-color: var(--c-cream);
        transition: all 0.7s ease-out;
    }

    .cta-button:hover .cta-line {
        width: 6rem;
        background-color: var(--c-gold);
    }

    /* ----------------------------------------------------
       MACRO REVEAL (Deep Zoom Text)
    ---------------------------------------------------- */
    .macro-reveal-container {
        position: absolute;
        inset: 0;
        z-index: 30;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
    }

    .macro-text {
        font-family: var(--font-serif);
        font-style: italic;
        font-size: 2.25rem;
        color: var(--c-cream);
        opacity: 0; /* Hidden by default, animated by GSAP */
        transform: scale(0.9);
        margin: 0;
        text-shadow: 0px 4px 30px rgba(0,0,0,0.8), 0px 1px 4px rgba(0,0,0,0.6);
        text-align: center;
        padding: 0 1.5rem;
    }

    /* ----------------------------------------------------
       SCROLL SPACER & TEASER SECTION
    ---------------------------------------------------- */
    .scroll-spacer {
        height: 200vh;
        width: 100%;
        background-color: var(--c-navy);
        position: relative;
        z-index: 0;
    }

    .teaser-section {
        min-height: 100vh;
        width: 100%;
        background-color: var(--c-navy);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 0 1rem;
        z-index: 10;
        position: relative;
        text-align: center;
    }

    .teaser-heading {
        font-family: var(--font-serif);
        font-style: italic;
        font-size: 2.25rem;
        color: var(--c-gold);
        margin-bottom: 2rem;
        max-width: 56rem;
        margin: 0;
        line-height: 1.2;
    }

    .teaser-subtext {
        font-family: var(--font-sans);
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.3em;
        color: rgba(247, 244, 239, 0.5);
        margin: 0;
        margin-top: 1.5rem;
    }

    /* ----------------------------------------------------
       RESPONSIVE DESIGN (Tablet & Desktop)
    ---------------------------------------------------- */
    @media (min-width: 768px) {
        .hero-ui-container {
            top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto !important;
        height: max-content;
        width: 100%;
        padding: 0 20px;
        /* Crucial: remove translateX so GSAP scroll animations don't jump */
        transform: none;
        }

        .title-overflow-wrapper {
            margin-bottom: 3rem;
        }
        
    
        .details-grid {
            grid-template-columns: repeat(12, 1fr);
            gap: 0.8rem;
            padding-top: 0.9rem;
        }

        /* Simulating Grid Columns for specific layout */
        .grid-col-detail-1 { grid-column: span 4; }
        .grid-col-detail-2 { grid-column: span 5; }
        .grid-col-cta { 
            grid-column: span 3;
            display: flex;
            justify-content: flex-end; 
        }


    
    .hero-subline {
        font-size: 1.45rem;
        line-height: 1.60;
        padding: 0 10px;
    }
    
        .cta-container { justify-content: flex-end;
        margin-top: 0.9rem;
        }

        .detail-heading { font-size: 1.45rem; }
        .detail-paragraph { font-size: 0.975rem; }
        .macro-text { font-size: 3.75rem; }
        .teaser-heading { font-size: 4.5rem; }
        .teaser-subtext { font-size: 0.875rem; }
    }
    
    
    @media screen and (max-width: 768px) { 
        
        .grid-col-subline {
            padding: 1rem 0.15rem;
        }
        
        .cta-container {
            margin-top: 0.9rem;
        }
        
        .monumental-title{
         font-size: clamp(5.3rem, 5.8vw, 6.8rem) !important;
        line-height: 1.1;   
        }
    }
    
    
    
    
    
    
        /* ----------------------------------------------------
       REVEAL SECTION ARCHITECTURE
    ---------------------------------------------------- */
    .smooth-wrapper {
        width: 100%;
    }

    .reveal-pin {
        position: relative;
        width: 100%;
        height: 100vh;
        overflow: hidden;
        background-color: var(--c-cream);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-between;
        padding: 3rem 1.5rem;
    }

    /* ----------------------------------------------------
       TYPOGRAPHY (LEFT COLUMN)
    ---------------------------------------------------- */
    .reveal-ui-container {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        z-index: 20;
        margin-top: 2rem;
        order: 2; /* Mobile order */
    }

    .reveal-label-wrapper {
        overflow: hidden;
        margin-bottom: 1.5rem;
    }

    .reveal-label {
        font-family: var(--font-sans);
        font-size: 0.625rem; /* 10px */
        text-transform: uppercase;
        letter-spacing: 0.3em;
        color: rgba(13, 17, 23, 0.6); /* Charcoal with 60% opacity */
        font-weight: 500;
        margin: 0;
        transform: translateY(100%); /* Initial state for animation */
    }

    .narrative-stack {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        width: 100%;
    }

    .narrative-line-wrapper {
        overflow: hidden;
        width: 100%;
        padding-bottom: 0.5rem;
    }

    .narrative-text {
        font-family: var(--font-serif);
        font-style: italic;
        font-size: 2.25rem; /* Mobile sizing */
        line-height: 1.1;
        color: var(--c-charcoal);
        letter-spacing: -0.025em;
        margin: 0;
        transform-origin: left center;
    }

    /* The Gold Highlight Effect on "eighty hours" */
    .highlight-gold {
        position: relative;
        z-index: 10;
        display: inline-block;
    }

    .highlight-gold::after {
        content: '';
        position: absolute;
        bottom: 15%;
        left: -2%;
        width: 104%;
        height: 25%;
        background-color: rgba(154, 123, 79, 0.3); /* Gold with 30% opacity */
        z-index: -1;
    }

    .narrative-accent {
        font-family: var(--font-sans);
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.3em;
        color: var(--c-gold);
        font-weight: 500;
        margin: 0;
        margin-top: 1rem;
    }

    /* ----------------------------------------------------
       IMAGE FRAME (RIGHT COLUMN)
    ---------------------------------------------------- */
    .image-frame-container {
        width: 100%;
        height: 50vh;
        position: relative;
        background-color: rgba(13, 17, 23, 0.05);
        box-shadow: 0 20px 40px rgba(32, 36, 46, 0.08), 0 1px 3px rgba(32, 36, 46, 0.05); /* .frame-shadow */
        order: 1; /* Mobile order */
    }

    .artwork-layer {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .macro-mask-layer {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
        /* Initial clip-path set by JS, but defined here for structure */
        clip-path: inset(100% 0% 0% 0%); 
    }

    .macro-artwork {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        opacity: 0.95;
        transform: scale(4);
        transform-origin: center center;
    }

    /* A subtle multiply blend overlay to enrich the macro shot */
    .macro-multiply-blend {
        position: absolute;
        inset: 0;
        background-color: rgba(27, 42, 74, 0.1);
        mix-blend-mode: multiply;
    }

    /* ----------------------------------------------------
       SCROLL HINT
    ---------------------------------------------------- */
    .scroll-hint-container {
        position: absolute;
        bottom: 1.5rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 30;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
        pointer-events: none;
        mix-blend-mode: difference;
        color: var(--c-cream);
    }

    .scroll-hint-text {
        font-family: var(--font-sans);
        font-size: 8px;
        text-transform: uppercase;
        letter-spacing: 0.3em;
        font-weight: 500;
        opacity: 0.8;
        margin: 0;
    }

    .scroll-hint-track {
        width: 1px;
        height: 2rem;
        background-color: rgba(247, 244, 239, 0.2);
        position: relative;
        overflow: hidden;
    }

    .scroll-indicator-line {
        width: 100%;
        height: 100%;
        background-color: var(--c-cream);
        position: absolute;
        top: 0;
        left: 0;
        animation: scrollLine 1.5s cubic-bezier(0.77, 0, 0.175, 1) infinite;
    }

    @keyframes scrollLine {
        0% { transform: translateY(-100%); }
        100% { transform: translateY(100%); }
    }

    /* ----------------------------------------------------
       RESPONSIVE DESIGN (Tablet & Desktop)
    ---------------------------------------------------- */
    @media (min-width: 768px) {
        .reveal-pin {
            flex-direction: row;
            padding: 3rem 4rem;
        }

        .reveal-ui-container {
            width: 41.666667%; /* w-5/12 */
            height: 100%;
            margin-top: 0;
            order: 1; /* Reset order for desktop */
        }

        .reveal-label-wrapper { margin-bottom: 2.5rem; }
        .reveal-label { font-size: 0.75rem; }

        .narrative-stack { gap: 1rem; }
        .narrative-text { font-size: 4.5vw; }
        
        .narrative-accent { 
            font-size: 0.875rem; 
            margin-top: 2rem;
        }

        .image-frame-container {
            width: 50%; /* w-6/12 */
            height: 80vh;
            order: 2; /* Reset order for desktop */
        }
    }

    @media (min-width: 1024px) {
        .reveal-pin {
            padding: 3rem 6rem;
        }
    }
    
    
    
    
     /* ----------------------------------------------------
       ARTIST SECTION ARCHITECTURE
    ---------------------------------------------------- */
    .artist-section-wrapper {
        width: 100%;
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 5rem 1.5rem; /* py-20 px-6 */
        overflow: hidden;
        position: relative;
    }

    .artist-grid-container {
        width: 100%;
        max-width: 1300px;
        display: flex;
        flex-direction: column;
        gap: 2.5rem; /* gap-y-10 on mobile */
        position: relative;
    }

    /* ----------------------------------------------------
       COMPONENTS
    ---------------------------------------------------- */
    
    /* 1. Artist Name (Typographic Lockup) */
    .artist-name-block {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding-bottom: 1rem;
        z-index: 20;
        opacity: 0; /* GSAP start state */
        order: 1; /* Mobile order */
    }

    .archival-tag-wrapper {
        display: flex;
        align-items: center;
        gap: 1rem;
        margin-bottom: 1.25rem;
    }

    .archival-label {
        font-family: var(--font-sans);
        font-size: 9px;
        text-transform: uppercase;
        letter-spacing: 0.25em;
        color: rgba(247, 244, 239, 0.4); /* Cream with 40% opacity */
    }

    .archival-line {
        width: 2rem;
        height: 1px;
        background-color: rgba(154, 123, 79, 0.5); /* Gold with 50% opacity */
    }

    .archival-subtext {
        font-family: var(--font-sans);
        font-size: 9px;
        text-transform: uppercase;
        letter-spacing: 0.4em;
        color: var(--c-gold);
        font-weight: 500;
        margin: 0;
    }

    .artist-name {
        font-family: var(--font-serif);
        font-size: 3rem; /* text-5xl mobile */
        color: var(--c-cream);
        letter-spacing: 0.025em;
        line-height: 1;
        margin: 0;
    }

    .text-gold { color: var(--c-gold); }

    /* 2. The Image */
    .artist-image-block {
        position: relative;
        z-index: 10;
        aspect-ratio: 3 / 4;
        overflow: hidden;
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); /* shadow-2xl */
        order: 2; /* Mobile order */
    }

    .image-wipe-mask {
        position: absolute;
        inset: 0;
        background-color: var(--c-navy);
        z-index: 20;
        transform-origin: right;
    }

    .artist-portrait {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: scale(1.15); /* GSAP start state */
    }

    .image-protective-gradient {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        width: 33.333333%;
        background: linear-gradient(to left, rgba(27, 42, 74, 0.4), transparent);
        z-index: 10;
        pointer-events: none;
    }

    /* 3. The Headline */
    .artist-headline-block {
        display: flex;
        align-items: center;
        z-index: 30;
        pointer-events: none;
        opacity: 0; /* GSAP start state */
        order: 3; /* Mobile order */
    }

    .artist-headline {
        font-family: var(--font-serif);
        font-style: italic;
        font-size: 3.75rem; /* text-6xl mobile */
        line-height: 0.85;
        color: var(--c-cream);
        letter-spacing: -0.025em;
        margin: 0;
        /* Sculptural text shadow to protect overlapping text */
        text-shadow: 0 10px 30px rgba(13, 17, 23, 0.4), 0 2px 5px rgba(13, 17, 23, 0.2);
    }

    /* 4. The Paragraph & CTA */
    .artist-content-block {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding-top: 1.5rem;
        z-index: 30;
        opacity: 0; /* GSAP start state */
        order: 4; /* Mobile order */
    }

    .artist-paragraph {
        font-family: var(--font-sans);
        font-size: 14.5px;
        color: rgba(247, 244, 239, 0.8);
        line-height: 1.9;
        font-weight: 300;
        margin: 0 0 2.5rem 0; /* mb-10 */
        max-width: 350px;
    }

    .story-cta {
        display: inline-flex;
        align-items: center;
        gap: 1.25rem;
        color: var(--c-cream);
        font-family: var(--font-sans);
        font-size: 10px;
        text-transform: uppercase;
        letter-spacing: 0.25em;
        font-weight: 500;
        text-decoration: none;
        transition: color 0.3s ease;
    }

    .story-cta:hover {
        color: var(--c-gold);
    }

    .story-cta-line {
        width: 2.5rem;
        height: 1px;
        background-color: var(--c-gold);
        transition: all 0.7s cubic-bezier(0.77, 0, 0.175, 1);
    }

    .story-cta:hover .story-cta-line {
        width: 5rem;
        background-color: var(--c-cream);
    }

    /* ----------------------------------------------------
       RESPONSIVE DESIGN (CSS Grid Overlap Architecture)
    ---------------------------------------------------- */
    @media (min-width: 768px) {
        .artist-section-wrapper {
            padding: 8rem 3rem; /* md:py-32 md:px-12 */
        }

        .artist-grid-container {
            display: grid;
            grid-template-columns: repeat(12, 1fr);
            grid-template-rows: 0.8fr auto 1.2fr;
            gap: 0; /* Reset mobile flex gap */
        }

        /* 1. Artist Name */
        .artist-name-block {
            grid-column: 7 / span 6; /* md:col-start-7 md:col-span-6 */
            grid-row: 1;             /* md:row-start-1 */
            order: unset;
            padding-bottom: 2rem;
            padding-left: 2rem;      /* md:pl-8 */
        }

        /* 2. The Image */
        .artist-image-block {
            grid-column: 2 / span 5; /* md:col-start-2 md:col-span-5 */
            grid-row: 1 / span 3;    /* md:row-start-1 md:row-span-3 */
            order: unset;
        }

        /* 3. The Headline */
        .artist-headline-block {
            grid-column: 6 / span 7; /* md:col-start-6 md:col-span-7 */
            grid-row: 2;             /* md:row-start-2 */
            order: unset;
            margin-left: -2rem;      /* md:-ml-8 (Pulls it left over the image) */
        }
        
        .artist-headline {
            font-size: 7.5vw;        /* md:text-[7.5vw] Fluid typography */
        }

        /* 4. The Paragraph & CTA */
        .artist-content-block {
            grid-column: 7 / span 5; /* md:col-start-7 md:col-span-5 */
            grid-row: 3;             /* md:row-start-3 */
            order: unset;
            padding-top: 2rem;
            padding-left: 2rem;      /* md:pl-8 */
        }

        .artist-paragraph {
            font-size: 15.5px;       /* md:text-[15.5px] */
        }
    }
    
    @media (min-width: 1024px) {
        .artist-name {
            font-size: 3.75rem;      /* lg:text-6xl */
        }
    }
    
    
    
      .stories-section-wrapper {
        position: relative;
        width: 100%;
        min-height: 100vh;
        padding: 6rem 1.5rem;
        display: flex;
        align-items: center;
        overflow: hidden;
    }

    .stories-container {
        width: 100%;
        max-width: 1500px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
    }

    .stories-text-col {
        width: 100%;
        position: relative;
        z-index: 40;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .stories-preheading-wrapper {
        display: flex;
        align-items: center;
        gap: 1rem;
        margin-bottom: 1.5rem;
    }

    .stories-preheading {
        font-family: var(--font-sans);
        font-size: 10px;
        text-transform: uppercase;
        letter-spacing: 0.4em;
        color: var(--c-gold);
        font-weight: 500;
        margin: 0;
    }

    .stories-heading-wrapper {
        overflow: hidden;
        margin-bottom: 2rem;
    }

    .stories-heading {
        font-family: var(--font-serif);
        font-style: italic;
        font-size: 3rem;
        line-height: 1.05;
        color: var(--c-cream);
        letter-spacing: -0.025em;
        margin: 0;
    }

    .stories-paragraph-wrapper {
        margin-bottom: 3rem;
    }

    .stories-paragraph {
        font-family: var(--font-sans);
        font-size: 14.5px;
        color: rgba(247, 244, 239, 0.7);
        line-height: 1.9;
        font-weight: 300;
        max-width: 350px;
        margin: 0;
    }

    /* CTA Link Styling */
    .story-link-wrapper {
        display: block;
    }

    .story-link {
        display: inline-flex;
        align-items: center;
        gap: 1.25rem;
        color: var(--c-cream);
        font-family: var(--font-sans);
        font-size: 10px;
        text-transform: uppercase;
        letter-spacing: 0.25em;
        font-weight: 500;
        text-decoration: none;
        transition: color 0.3s ease;
    }

    .story-link:hover {
        color: var(--c-gold);
    }

    .story-link-line {
        width: 3rem;
        height: 1px;
        background-color: var(--c-gold);
        transition: all 0.7s cubic-bezier(0.77, 0, 0.175, 1);
    }

    .story-link:hover .story-link-line {
        width: 6rem;
        background-color: var(--c-cream);
    }

    .stories-image-col {
        width: 100%;
        height: 65vh;
        position: relative;
        z-index: 10;
    }

    /* Parallax Elements Structure */
    .parallax-item-1 { position: absolute; top: 10%; left: 0%; width: 45%; z-index: 20; }
    .parallax-item-2 { position: absolute; top: 45%; right: 0%; width: 38%; z-index: 40; }
    .parallax-item-3 { position: absolute; bottom: 5%; right: 5%; width: 75%; z-index: 30; }

    /* The physical gallery frame styling */
    .art-frame {
        box-shadow: 0 40px 80px rgba(0,0,0,0.6), 0 10px 20px rgba(0,0,0,0.3);
        border: 1px solid rgba(247, 244, 239, 0.05);
        background-color: #1a1f29;
        overflow: hidden;
        position: relative;
        cursor: pointer;
        display: flex;
        width: 100%;
    }
    
    .art-frame img {
        width: 100%;
        height: auto;
        object-fit: cover;
        transform-origin: center;
        display: block;
        transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    }

    .art-frame:hover img {
        transform: scale(1.05);
    }

    .art-overlay {
        position: absolute;
        inset: 0;
        background-color: rgba(27, 42, 74, 0.2);
        mix-blend-mode: multiply;
        opacity: 0;
        transition: opacity 0.7s ease;
        pointer-events: none;
    }

    .art-frame:hover .art-overlay {
        opacity: 1;
    }

    /* Specific overlays based on original HTML */
    .parallax-item-2 .art-overlay { background-color: rgba(27, 42, 74, 0.3); opacity: 0.3; }
    .parallax-item-2 .art-frame:hover .art-overlay { opacity: 1; }
    
    .parallax-item-3 .art-overlay { background-color: rgba(27, 42, 74, 0.1); }
    .parallax-item-3 .art-highlight-border {
        position: absolute;
        inset: 0;
        border: 1px solid rgba(154, 123, 79, 0.1);
        pointer-events: none;
        z-index: 10;
    }

    @media (min-width: 768px) {
        .stories-section-wrapper { padding: 8rem 3rem; }
        
        .stories-container {
            flex-direction: row;
            gap: 2rem;
        }

        .stories-text-col { width: 41.666667%; /* w-5/12 */ }
        .stories-image-col { width: 58.333333%; /* w-7/12 */ height: 80vh; }

        .stories-heading { font-size: 3.75rem; }
        .stories-paragraph { font-size: 15.5px; }

        /* Adjusted Image Positioning for Tablet */
        .parallax-item-1 { left: 5%; width: 38%; }
        .parallax-item-2 { top: 38%; right: 5%; width: 30%; }
        .parallax-item-3 { right: 15%; width: 58%; }
    }

    @media (min-width: 1024px) {
        .stories-section-wrapper { padding: 8rem 6rem; }
        .stories-container { gap: 2rem; }
        .stories-heading { font-size: 4.5rem; }
    }

    @media (min-width: 1280px) {
        .stories-text-col { width: 33.333333%; /* xl:w-4/12 */ }
        .stories-image-col { width: 66.666667%; /* xl:w-8/12 */ }
    }
    
    
    
       /* ----------------------------------------------------
       SECTION ARCHITECTURE
    ---------------------------------------------------- */
    .proof-section-wrapper {
        position: relative;
        width: 100%;
        padding: 6rem 1.5rem; /* py-24 px-6 */
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        background-color: var(--c-cream);
    }

    .proof-container {
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /* ----------------------------------------------------
       EDITORIAL HEADER
    ---------------------------------------------------- */
    .proof-header-wrapper {
        display: flex;
        align-items: center;
        gap: 1.5rem; /* gap-6 */
        margin-bottom: 4rem; /* mb-16 */
        width: 100%;
        max-width: 56rem; /* max-w-4xl */
        justify-content: center;
    }

    .proof-line {
        height: 1px;
        background-color: rgba(154, 123, 79, 0.5); /* bg-gold/50 */
        width: 3rem; /* w-12 mobile */
    }

    .line-left { transform-origin: left; transform: scaleX(0); }
    .line-right { transform-origin: right; transform: scaleX(0); }

    .proof-label {
        font-family: var(--font-sans);
        font-size: 9px; /* mobile text-[9px] */
        text-transform: uppercase;
        letter-spacing: 0.3em;
        color: rgba(13, 17, 23, 0.6); /* text-charcoal/60 */
        font-weight: 500;
        white-space: nowrap;
        margin: 0;
        opacity: 0; /* GSAP start state */
        transform: translateY(10px); /* GSAP start state */
    }

    /* ----------------------------------------------------
       LOGO GRID & FILTER MAGIC
    ---------------------------------------------------- */
    .proof-logo-grid {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 3rem; /* gap-12 mobile */
    }

    .logo-wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0; /* GSAP start state */
        transform: translateY(2rem); /* GSAP start state */
        flex: 0 0 auto; /* Prevents Elementor from stretching the flex items */
    }

    /* The Agency Secret Filter */
    .provenance-logo {
        width: auto !important; /* Forces Elementor to respect aspect ratio */
        max-width: 100% !important; 
        object-fit: contain;
        /* Turns any logo into a 35% opacity charcoal stamp */
        filter: grayscale(100%) brightness(0) opacity(35%);
        mix-blend-mode: multiply;
        transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        user-select: none;
        pointer-events: none;
    }
    
    .logo-wrapper:hover .provenance-logo {
        filter: grayscale(100%) brightness(0) opacity(80%);
        transform: scale(1.02);
    }

    /* Specific Logo Heights (Mobile) - !important outranks Elementor defaults */
    .logo-1 { height: 1.75rem !important; } /* h-7 */
    .logo-2 { height: 1.75rem !important; } /* h-7 */
    .logo-3 { height: 2rem !important; }    /* h-8 */
    .logo-4 { height: 5rem !important; }    /* h-20 */

    /* ----------------------------------------------------
       RESPONSIVE DESIGN (Tablet & Desktop)
    ---------------------------------------------------- */
    @media (min-width: 768px) {
        .proof-section-wrapper { padding: 8rem 3rem; }
        
        .proof-header-wrapper { margin-bottom: 6rem; }
        
        .proof-line { width: 6rem; } /* w-24 */
        
        .proof-label { font-size: 11px; }

        .proof-logo-grid { gap: 5rem; } /* gap-20 */
        
        /* Specific Logo Heights (Tablet/Desktop) */
        .logo-1 { height: 2.25rem !important; } /* md:h-9 */
        .logo-2 { height: 2.25rem !important; } /* md:h-9 */
        .logo-3 { height: 2.75rem !important; } /* md:h-11 */
        .logo-4 { height: 7rem !important; }    /* md:h-28 */
    }

    @media (min-width: 1024px) {
        .proof-section-wrapper { padding: 8rem 6rem; }
        .proof-logo-grid { gap: 8rem; } /* lg:gap-32 */
    }
    
    
    .foo-links nav ul li a {
        padding-left: 0px !important;
    }
    
    
    
    .footer-monolith {
        font-family: var(--font-serif);
        font-size: 11.8vw;
        line-height: 1;
        padding-bottom: 0.1em;
        letter-spacing: -0.02em;
        color: rgba(247, 244, 239, 0.03);
        -webkit-text-stroke: 1px rgba(247, 244, 239, 0.1);
        text-transform: uppercase;
        text-align: center;
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
        margin: 0;
    }
    
    
    .foo-links2 nav ul li a {
        padding-left: 0px !important;
    }
    
    
    
    /* =========================================
   HOMEPAGE VIDEO GALLERY (1 + 2 LAYOUT)
   ========================================= */
.hp-video-gallery {
    background-color: #F7F4EF; /* Cream background for contrast */
    padding: 1rem 1.5rem;
    position: relative;
    z-index: 10;
}

.hp-video-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

/* Header Typography */
.hp-video-header {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hp-video-label {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.hp-video-label-line {
    width: 3rem;
    height: 1px;
    background: rgba(154, 123, 79, 0.5); /* Gold */
}

.hp-video-label-text {
    font-family: 'Inter', sans-serif;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.3em;
    color: rgba(13, 17, 23, 0.5);
    margin: 0;
}

.hp-video-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2.5rem;
    color: #0D1117;
    margin: 0;
    font-weight: 400;
}

@media (min-width: 768px) {
    .hp-video-title { font-size: 4rem; }
}

/* Layout Architecture */
.hp-video-layout {
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

@media (min-width: 768px) {
    .hp-video-layout { gap: 6rem; }
}

.hp-video-grid-2 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 4rem;
    margin-bottom:59px !important;
}

@media (min-width: 768px) {
    .hp-video-grid-2 {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
    }
}

.hp-video-card {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Fluid 16:9 Video Wrapper */
.hp-iframe-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* Perfect 16:9 Aspect Ratio */
    height: 0;
    background-color: #0D1117; 
    box-shadow: 0 30px 60px rgba(13, 17, 23, 0.08), 0 10px 20px rgba(13, 17, 23, 0.04);
    overflow: hidden;
}

/* Make the featured video slightly less tall on ultra-wide screens to keep it cinematic */
@media (min-width: 1024px) {
    .featured-wrapper {
        padding-bottom: 45%; 
    }
}

.hp-iframe-wrapper iframe,
.hp-iframe-wrapper object,
.hp-iframe-wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Video Metadata */
.hp-video-info {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    text-align: left;
    padding: 0 0.5rem;
}

.hp-video-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.75rem;
    color: #0D1117;
    margin: 0;
    font-weight: 400;
}

@media (min-width: 768px) {
    .hp-video-name { font-size: 2.25rem; }
    .featured-video .hp-video-name { font-size: 2.75rem; }
}

.hp-video-meta {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: rgba(13, 17, 23, 0.5);
    margin: 0;
}

/* GSAP Initial States */
.reveal-hp-video {
    opacity: 0;
    transform: translateY(2rem);
}

.reveal-hp-video-text {
    transform: translateY(100%);
}/* End custom CSS */