.elementor-6 .elementor-element.elementor-element-3b3229f{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-2734214{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-1bd5ea0{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-be410ef{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-7fc8787{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-c9baba2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-ea3a6bb{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-231abd4{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-a2f32f1{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-7b12e03{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-9662a65{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-8660d45{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-6b54838{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-cc89ad7{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-1efb4a3{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-251c2b5{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-59c9713{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-bf10340{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-b4e381f{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-4604d38{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-378980c{--display:flex;--justify-content:center;}.elementor-6 .elementor-element.elementor-element-41c926d{--display:flex;}.elementor-6 .elementor-element.elementor-element-1f3d697{--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-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-6 .elementor-element.elementor-element-155b323{--divider-border-style:solid;--divider-color:#16151214;--divider-border-width:1px;}.elementor-6 .elementor-element.elementor-element-155b323 .elementor-divider-separator{width:100%;}.elementor-6 .elementor-element.elementor-element-155b323 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.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-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-icon i{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-icon svg{fill:#88837A;transition:fill 0.3s;}.elementor-6 .elementor-element.elementor-element-8f0b28b{--e-icon-list-icon-size:13px;--icon-vertical-offset:0px;}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-item > .elementor-icon-list-text, .elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-item > a{font-family:"Syne", Sans-serif;font-size:13px;font-weight:400;line-height:18px;letter-spacing:0.7px;}.elementor-6 .elementor-element.elementor-element-8f0b28b .elementor-icon-list-text{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-05d1ae2{padding:5px 0px 0px 0px;--e-icon-list-icon-size:13px;--icon-vertical-offset:0px;}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-icon i{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-icon svg{fill:#88837A;transition:fill 0.3s;}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-item > a{font-family:"Syne", Sans-serif;font-size:13px;font-weight:400;line-height:18px;letter-spacing:0.7px;}.elementor-6 .elementor-element.elementor-element-05d1ae2 .elementor-icon-list-text{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-65d690f{padding:5px 0px 0px 0px;--e-icon-list-icon-size:13px;--icon-vertical-offset:0px;}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-icon i{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-icon svg{fill:#88837A;transition:fill 0.3s;}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-item > .elementor-icon-list-text, .elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-item > a{font-family:"Syne", Sans-serif;font-size:13px;font-weight:400;line-height:18px;letter-spacing:0.7px;}.elementor-6 .elementor-element.elementor-element-65d690f .elementor-icon-list-text{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-dee069b{padding:5px 0px 0px 0px;--e-icon-list-icon-size:13px;--icon-vertical-offset:0px;}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-icon i{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-icon svg{fill:#88837A;transition:fill 0.3s;}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-item > .elementor-icon-list-text, .elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-item > a{font-family:"Syne", Sans-serif;font-size:13px;font-weight:400;line-height:18px;letter-spacing:0.7px;}.elementor-6 .elementor-element.elementor-element-dee069b .elementor-icon-list-text{color:#88837A;transition:color 0.3s;}.elementor-6 .elementor-element.elementor-element-af4a58c{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-7a5c7b5{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-963b3db{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6 .elementor-element.elementor-element-963b3db:not(.elementor-motion-effects-element-type-background), .elementor-6 .elementor-element.elementor-element-963b3db > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A1815;}.elementor-6 .elementor-element.elementor-element-2d3ce50{padding:0px 0px 0px 0px;}body.elementor-page-6:not(.elementor-motion-effects-element-type-background), body.elementor-page-6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF8F5;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-6 .elementor-element.elementor-element-41c926d{--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-6 .elementor-element.elementor-element-3b3229f{--width:100%;}.elementor-6 .elementor-element.elementor-element-a2f32f1{--width:100%;}.elementor-6 .elementor-element.elementor-element-59c9713{--width:100%;}.elementor-6 .elementor-element.elementor-element-378980c{--width:100%;}.elementor-6 .elementor-element.elementor-element-af4a58c{--width:100%;}}/* Start custom CSS *//* ====================================================
   DESIGN TOKENS & CSS VARIABLES
==================================================== */
:root {
    /* Palette */
    --ivory: #FAF8F5;
    --ivory-2: #F0EBE1;
    --char: #161512;
    --char-2: #1A1815;
    --clay: #A34F3D;
    --clay-lt: #C96C57;
    --gold: #D4AF37;
    --muted: #88837A;

    --border: rgba(22, 21, 18, 0.08);
    --border-d: rgba(250, 248, 245, 0.08);

    /* Typography */
    --ff-disp: 'Cormorant Garamond', serif;
    --ff-ui: 'Syne', sans-serif;

    /* Easings */
    --ease: cubic-bezier(0.85, 0, 0.15, 1);
    --ease-out: cubic-bezier(0.25, 1, 0.15, 1);
    --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);

    --dur-fast: 0.4s;
    --dur-mid: 0.8s;
    --dur-slow: 1.2s;
}

/* Base Body Application */
body {
    background: var(--ivory);
    color: var(--char);
    font-family: var(--ff-ui);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}


.works-section .btn-clay:hover {
 color: #fff !important;
} 

.form-contact .form-btn:hover {
    background: #333 !important;
    transition: transform 0.4s var(--ease-out);
}

/* ====================================================
   ELEMENTOR OVERRIDES (Fixes Bullets & Colors)
==================================================== */
#main-nav ul,
.mobile-nav-overlay ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main-nav a,
.mobile-nav-overlay a {
    color: var(--char) !important; 
    text-decoration: none !important;
    box-shadow: none !important;
}

.e-form-base .e-form-submit-button-base {
    background: #A34F3D !important;
}

.e-form-submit-button-base:hover {
    background-color: #323232;
    color: #fff !important;
    
}

/* ====================================================
   MAIN NAVIGATION LAYOUT
==================================================== */
#main-nav {
    position: fixed;
    top: 0; left: 0; width: 100%;
    z-index: 500;
    padding: 0 5vw;
    height: 120px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    transition: all 0.6s var(--ease);
    border-bottom: 1px solid transparent;
}
#main-nav.scrolled {
    height: 80px;
    background: rgba(250, 248, 245, 0.92);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border-bottom-color: var(--border);
}
.nav-group { display: flex; flex-direction: column; gap: 0.8rem; }
.nav-group.left { align-items: flex-start; }
.nav-group.center { align-items: center; }
.nav-group.right { align-items: flex-end; }
.nav-brand { position: relative; z-index: 501; }
.nav-brand img { width: 160px; height: auto; transition: width 0.6s var(--ease); }
#main-nav.scrolled .nav-brand img { width: 130px; }

.nav-links {
    display: flex; gap: 3vw; font-size: 0.75rem; letter-spacing: 0.2em;
    text-transform: uppercase; font-weight: 600; 
}
.nav-links a { position: relative; padding: 0.5rem 0; overflow: hidden; }
.nav-links a::after {
    content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1.5px;
    background: var(--clay); transform: scaleX(0); transform-origin: right;
    transition: transform 0.5s var(--ease-out);
}
.nav-links a:hover::after { transform: scaleX(1); transform-origin: left; }

/* ====================================================
   MOBILE MENU & OVERLAY
==================================================== */
.desktop-only { display: flex; }
.mobile-menu-toggle {
    display: none; flex-direction: column; justify-content: center; gap: 6px;
    width: 32px; height: 32px; cursor: pointer; z-index: 501;
}
.mobile-menu-toggle span {
    display: block; width: 100%; height: 1.5px; background-color: var(--char); transition: all 0.4s var(--ease-out);
}
.mobile-menu-toggle.open span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
.mobile-menu-toggle.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.mobile-menu-toggle.open span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }

.mobile-nav-overlay {
    position: fixed; inset: 0; background: var(--ivory); z-index: 499;
    display: flex; flex-direction: column; justify-content: center; align-items: center;
    opacity: 0; visibility: hidden; transition: opacity 0.5s var(--ease), visibility 0.5s;
}
.mobile-nav-overlay.open { opacity: 1; visibility: visible; }
.mobile-nav-overlay ul { display: flex; flex-direction: column; gap: 2.5rem; text-align: center; }
.mobile-nav-overlay li { transform: translateY(20px); opacity: 0; transition: transform 0.5s var(--ease-out), opacity 0.5s var(--ease-out); }
.mobile-nav-overlay.open li { transform: translateY(0); opacity: 1; }
.mobile-nav-overlay.open li:nth-child(1) { transition-delay: 0.1s; }
.mobile-nav-overlay.open li:nth-child(2) { transition-delay: 0.2s; }
.mobile-nav-overlay.open li:nth-child(3) { transition-delay: 0.3s; }
.mobile-nav-overlay.open li:nth-child(4) { transition-delay: 0.4s; }

.mobile-nav-overlay a { font-family: var(--ff-disp); font-size: 3rem; transition: color 0.3s; line-height: 1; }
.mobile-nav-overlay a:hover { color: var(--clay) !important; font-style: italic; }

@media (max-width: 700px) {
    #main-nav { padding: 0 6vw; height: 80px; grid-template-columns: auto 1fr; }
    #main-nav.scrolled { height: 70px; }
    .desktop-only { display: none !important; }
    .mobile-menu-toggle { display: flex; }
    .nav-group.center { align-items: flex-end; }
    .nav-brand img { width: 100px; }
}


.hero { position: relative; min-height: 100vh; display: grid; grid-template-columns: 1.1fr 0.9fr; overflow: hidden; padding-top: 5vh; }
.hero-bg-word { position: absolute; top: 45%; left: 2%; transform: translateY(-50%); font-family: var(--ff-disp); font-size: clamp(8rem, 22vw, 28rem); font-weight: 300; font-style: italic; color: transparent; -webkit-text-stroke: 1px rgba(22, 21, 18, 0.05); z-index: 1; pointer-events: none; white-space: nowrap; letter-spacing: -0.02em; opacity: 0; animation: heroWordReveal 0.3s var(--ease-out) 0.5s forwards; }
@keyframes heroWordReveal { from { opacity: 0; transform: translate(-3%, -50%); } to { opacity: 1; transform: translate(0, -50%); } }

.hero-left { padding: 0 4vw 0 7vw; display: flex; flex-direction: column; justify-content: center; position: relative; z-index: 10; }
.hero-eyebrow { display: flex; align-items: center; gap: 1.5rem; margin-bottom: 3rem; opacity: 0; animation: fadeUp 0.4s var(--ease-out) 0.5s forwards; }
.hero-eyebrow-line { width: 50px; height: 1px; background: var(--clay); }
.hero-eyebrow span { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.25em; color: var(--clay); font-weight: 600; }
.hero-title { font-family: var(--ff-disp); font-size: clamp(4.5rem, 8.5vw, 10rem); line-height: 0.85; letter-spacing: -0.03em; font-weight: 300; color: var(--char); margin-bottom: 2.5rem; opacity: 0; animation: fadeUp 0.5s var(--ease-out) 0.5s forwards; }
.hero-title em { font-style: italic; color: var(--clay); }
.hero-desc { font-size: 1.1rem; line-height: 1.8; color: var(--muted); max-width: 420px; margin-bottom: 4rem; opacity: 0; animation: fadeUp 0.6s var(--ease-out) 0.6s forwards; }
.hero-cta-row { display: flex; align-items: center; gap: 3rem; opacity: 0; animation: fadeUp 0.6s var(--ease-out) 0.8s forwards; flex-wrap: wrap; }

/* Buttons */
.btn-clay { display: inline-flex; align-items: center; gap: 1.2rem; background: var(--clay); color: #fff; font-family: var(--ff-ui); font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; padding: 1.25rem 3rem; transition: transform 0.5s var(--ease-bounce), box-shadow 0.5s var(--ease); box-shadow: 0 15px 35px -5px rgba(163, 79, 61, 0.3); position: relative; overflow: hidden; border-radius: 2px; }
.btn-clay::before { content: ''; position: absolute; inset: 0; background: var(--char); transform: scaleX(0); transform-origin: right; transition: transform 0.6s var(--ease); }
.btn-clay:hover::before { transform: scaleX(1); transform-origin: left; }
.btn-clay span, .btn-clay svg { position: relative; z-index: 1; transition: transform 0.4s var(--ease-out); }
.btn-clay:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -5px rgba(22, 21, 18, 0.2); }
.btn-clay:hover svg { transform: translateX(4px);  }

.hero-cta-row a.btn-clay:hover {
    color: #fff !important;
}

.btn-ghost { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; color: var(--char); display: inline-flex; align-items: center; gap: 0.8rem; position: relative; }
.btn-ghost::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 100%; height: 1px; background: var(--clay); transform: scaleX(0); transform-origin: right; transition: transform 0.5s var(--ease); }
.btn-ghost:hover::after { transform: scaleX(1); transform-origin: left; }
.btn-ghost svg { transition: transform 0.4s var(--ease); color: var(--clay); }
.btn-ghost:hover svg { transform: translateX(5px); }

/* Hero Images */
.hero-right { position: relative; overflow: hidden; }
.hero-right::before { content: ''; position: absolute; inset: 0; background: linear-gradient(to right, var(--ivory) 0%, transparent 15%); z-index: 5; pointer-events: none; }
.hero-img-third { position: absolute; top: 2%; right: 2%; width: 40%; aspect-ratio: 4/5; border: 6px solid var(--ivory); box-shadow: 0 20px 40px -10px rgba(22, 21, 18, 0.2); transform: translateY(40px) rotate(6deg); opacity: 0; animation: heroImgThirdReveal 0.5s var(--ease-out) 0.8s forwards; z-index: 2; overflow: hidden;}
.hero-img-main { position: absolute; top: 6%; right: 8%; width: 72%; aspect-ratio: 3.5/5; box-shadow: 0 30px 70px -15px rgba(22, 21, 18, 0.25); transform: translateY(50px) rotate(-3deg); opacity: 0; animation: heroImgMainReveal 0.5s var(--ease-out) 0.8s forwards; border-radius: 2px; z-index: 3; overflow: hidden;}
.hero-img-sub { position: absolute; bottom: 8%; right: 48%; width: 38%; aspect-ratio: 3/4; border: 8px solid var(--ivory); box-shadow: 0 25px 50px -10px rgba(22, 21, 18, 0.15); transform: translateY(40px); opacity: 0; animation: heroImgReveal 0.5s var(--ease-out) 0.8s forwards; z-index: 4; overflow: hidden;}

.hero-img-main img, .hero-img-sub img, .hero-img-third img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.02); transition: transform 0.8s var(--ease-out), filter 0.8s ease; filter: grayscale(15%); }
.hero-img-main:hover img, .hero-img-sub:hover img, .hero-img-third:hover img { transform: scale(1.08); filter: grayscale(0%); }

.artist-name-overlay { position: absolute; bottom: 1.2rem; right: 1.5rem; font-family: var(--ff-disp); font-size: 1.8rem; color: var(--ivory); z-index: 10; font-style: italic; text-shadow: 0 4px 15px rgba(22, 21, 18, 0.6); pointer-events: none; }

@keyframes heroImgMainReveal { to { opacity: 1; transform: translateY(0) rotate(-3deg); } }
@keyframes heroImgThirdReveal { to { opacity: 1; transform: translateY(0) rotate(6deg); } }
@keyframes heroImgReveal { to { opacity: 1; transform: translateY(0); } }

/* Badge & Scroll */
.rotating-badge { position: absolute; bottom: 22%; left: 5%; width: 140px; height: 140px; z-index: 10; opacity: 0; animation: fadeUp 1s var(--ease-out) 2.4s forwards; }
.rotating-badge svg { width: 100%; height: 100%; animation: spinBadge 25s linear infinite; }
.rotating-badge text { font-family: var(--ff-ui); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3em; fill: var(--clay); }
.badge-center { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.badge-center-icon { width: 32px; height: 32px; border: 1px solid rgba(163, 79, 61, 0.5); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--clay); }
@keyframes spinBadge { to { transform: rotate(360deg); } }

.hero-scroll { position: absolute; bottom: 2vh; left: 7vw; display: flex; flex-direction: column; align-items: flex-start; gap: 1.2rem; z-index: 10; opacity: 0; animation: fadeUp 1s var(--ease-out) 2.6s forwards; }
.scroll-label { font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.25em; color: var(--muted); font-weight: 600; writing-mode: vertical-rl; transform: rotate(180deg); }
.scroll-line { width: 1px; height: 70px; background: linear-gradient(to bottom, var(--clay), transparent); animation: scrollPulse 2.5s var(--ease-out) infinite; transform-origin: top; }
@keyframes scrollPulse { 0% { transform: scaleY(0.3); opacity: 0.3; } 50% { transform: scaleY(1); opacity: 1; } 100% { transform: scaleY(0.3); opacity: 0.3; } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1100px) {
    .hero { grid-template-columns: 1fr; min-height: auto; padding-top: 100px; }
    .hero-left { padding: 80px 7vw 8vh; }
    .hero-right { height: 85vw; }
}
@media (max-width: 700px) {
    .hero-bg-word { font-size: 25vw; left: 5%; top: 40%; }
    .hero-title { font-size: clamp(4rem, 12vw, 6.5rem); }
}




/* ====================================================
   MARQUEE STRIP
==================================================== */
.marquee-strip {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    padding: 1.5rem 0;
    overflow: hidden;
    background: var(--ivory);
    position: relative;
    z-index: 2;
}

.marquee-track {
    display: flex;
    gap: 0;
    white-space: nowrap;
    /* 35s controls the speed. Lower = faster */
    animation: marqueeRoll 35s linear infinite;
}

/* Pause the animation if a user hovers over it */
.marquee-track:hover {
    animation-play-state: paused;
}

.marquee-item {
    display: inline-flex;
    align-items: center;
    gap: 2.5rem;
    padding: 0 2.5rem;
    margin: 0 !important; /* Forces Elementor typography defaults off */
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: var(--char);
    flex-shrink: 0;
}

.marquee-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--clay);
    flex-shrink: 0;
}

@keyframes marqueeRoll {
    to {
        transform: translateX(-50%);
    }
}



/* ====================================================
   STATS ROW
==================================================== */
.stats-section {
    padding: 10vh 7vw;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.stat-item {
    padding: 4rem 3rem;
    border-right: 1px solid var(--border);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: background 0.4s var(--ease);
    z-index: 1;
}

.stat-item:last-child {
    border-right: none;
}

/* Bottom Line Hover Animation */
.stat-item::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--clay);
    transition: width 0.6s var(--ease-out);
    z-index: 3;
}

.stat-item:hover::before {
    width: 100%;
}

/* Background Image Hover Reveal */
.stat-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0;
    z-index: 0;
    transition: opacity 0.5s var(--ease-out), transform 0.5s var(--ease-out);
    transform: scale(1.05);
    pointer-events: none;
}

.stat-item:hover .stat-bg {
    opacity: 0.15;
    transform: scale(1);
}

/* Typography */
.stat-num {
    font-family: var(--ff-disp);
    font-size: clamp(3.5rem, 5vw, 5.5rem);
    font-weight: 300;
    line-height: 1;
    color: var(--char);
    margin-bottom: 1rem;
    position: relative;
    z-index: 2;
}

.stat-unit {
    color: var(--clay);
    font-style: italic;
    font-size: 0.8em;
}

.stat-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--muted);
    font-weight: 600;
    position: relative;
    z-index: 2;
}

/* ====================================================
   SCROLL REVEAL UTILITY (Fades elements up smoothly)
==================================================== */
.reveal-el {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1.2s var(--ease-out), transform 1.2s var(--ease-out);
}

.reveal-el.in-view {
    opacity: 1;
    transform: translateY(0);
}

.stat-item:nth-child(2) { transition-delay: 0.15s; }
.stat-item:nth-child(3) { transition-delay: 0.3s; }
.stat-item:nth-child(4) { transition-delay: 0.45s; }

/* ====================================================
   RESPONSIVE
==================================================== */
@media (max-width: 1100px) {
    .stats-section { grid-template-columns: repeat(2, 1fr); gap: 2rem 0; }
    .stat-item { border-bottom: 1px solid var(--border); padding: 3rem 2rem; }
    .stat-item:nth-child(2), .stat-item:nth-child(4) { border-right: none; }
}
@media (max-width: 700px) {
    .stats-section { grid-template-columns: 1fr; padding: 5vh 6vw; }
    .stat-item { border-right: none; padding: 2.5rem 0; }
}



/* ====================================================
   PHILOSOPHY / MANIFESTO INTRO
==================================================== */
.philosophy-section {
    padding: 15vh 7vw;
    background: var(--ivory);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

.philosophy-inner {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10vw;
    align-items: center;
}

.philosophy-heading {
    font-family: var(--ff-disp);
    font-size: clamp(3rem, 5vw, 5.5rem);
    font-weight: 300;
    line-height: 1.05;
    letter-spacing: -0.015em;
    color: var(--char);
}

.philosophy-heading em {
    font-style: italic;
    color: var(--clay);
}

.philosophy-quote-mark {
    color: var(--clay);
    opacity: 0.5;
    font-family: var(--ff-disp);
    margin-left: 0.2rem;
}

.philosophy-author-block {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 2.5rem;
}

.philosophy-author-img {
    width: 50px;
    height: 50px !important;
    border-radius: 50% !important;
    object-fit: cover;
    border: 1px solid var(--border);
}

.philosophy-author-name {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--char);
}

.philosophy-right {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

/* The vertical gradient line */
.philosophy-rule {
    width: 1px;
    height: 100px;
    background: linear-gradient(to bottom, var(--clay), transparent);
}

.philosophy-text {
    font-size: 1.15rem;
    line-height: 1.9;
    color: var(--muted);
    max-width: 500px;
    font-weight: 400;
}

/* ====================================================
   RESPONSIVE
==================================================== */
@media (max-width: 1100px) {
    .philosophy-inner {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
}

@media (max-width: 700px) {
    .philosophy-section {
        padding: 10vh 6vw;
    }
    .philosophy-heading {
        font-size: clamp(2.5rem, 10vw, 3.5rem);
    }
    .philosophy-rule {
        height: 60px;
    }
}



/* ====================================================
           WORKS SECTION — GRID
        ==================================================== */
        .works-section {
            padding: 12vh 0 0;
            position: relative;
            overflow: hidden;
            background: #FDFBFA;
            /* Slightly lighter bg to pop */
        }

        .works-head {
            padding: 0 7vw;
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            margin-bottom: 6vh;
        }

        .works-eyebrow-text {
            display: block;
            font-size: 0.95rem;
            color: var(--char);
            margin-bottom: 3rem;
            font-weight: 500;
        }

        .works-title {
            font-family: var(--ff-disp);
            font-size: clamp(3.5rem, 6vw, 6.5rem);
            font-weight: 300;
            line-height: 0.9;
            letter-spacing: -0.02em;
            max-width: 100%;
        }

        .works-title em {
            font-style: italic;
            color: var(--clay);
        }

        .works-meta {
            text-align: right;
            display: flex;
            flex-direction: column;
            align-items: flex-end;
        }

        .works-count {
            font-family: var(--ff-disp);
            font-size: 6rem;
            font-weight: 300;
            color: rgba(22, 21, 18, 0.04);
            line-height: 0.8;
            margin-bottom: 1rem;
        }

        .works-desc {
            font-size: 0.95rem;
            color: var(--muted);
            line-height: 1.8;
            max-width: 320px;
            text-align: right;
            margin-top: 1.5rem;
        }

        /* Grid Layout */
        .works-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 4vw;
            padding: 2rem 7vw 8vh;
        }

        .work-card {
            display: flex;
            flex-direction: column;
            gap: 2.5rem;
        }

        .work-img-wrap {
            position: relative;
            width: 100%;
            aspect-ratio: 1/1;
            overflow: hidden;
            background: var(--ivory-2);
            border-radius: 2px;
        }

        .work-img-wrap img {
            object-fit: contain;
            padding: 2rem;
            transform: scale(1.02);
            transition: transform 1.2s var(--ease);
            filter: drop-shadow(0 25px 40px rgba(0, 0, 0, 0.08));
        }

        .work-card:hover .work-img-wrap img {
            transform: scale(1.08) translateY(-10px);
            filter: drop-shadow(0 35px 50px rgba(0, 0, 0, 0.15));
        }

        /* Premium overlay */
        .work-img-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(22, 21, 18, 0.2), transparent 40%);
            opacity: 0;
            transition: opacity 0.6s var(--ease);
            display: flex;
            align-items: flex-end;
            padding: 2.5rem;
        }

        .work-card:hover .work-img-overlay {
            opacity: 1;
        }

        .work-overlay-btn {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: #fff;
            display: flex;
            align-items: center;
            gap: 0.6rem;
            transform: translateY(15px);
            transition: transform 0.6s var(--ease);
        }

        .work-card:hover .work-overlay-btn {
            transform: translateY(0);
        }

        .work-meta {
            display: flex;
            flex-direction: column;
            gap: 0.6rem;
            padding: 0 0.5rem;
        }

        .work-index {
            font-family: var(--ff-disp);
            font-size: 6rem;
            color: rgba(22, 21, 18, 0.03);
            line-height: 0.8;
            letter-spacing: -0.04em;
            font-weight: 300;
            pointer-events: none;
            margin-left: -0.5rem;
            margin-bottom: -1rem;
        }

        .work-title {
            font-family: var(--ff-disp);
            font-size: 2rem;
            font-weight: 400;
            letter-spacing: -0.01em;
            line-height: 1.1;
            color: var(--char);
        }

        .work-material {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: var(--clay);
            margin: 0.5rem 0 0.8rem;
        }

        .work-desc-line {
            font-size: 0.95rem;
            line-height: 1.6;
            color: var(--muted);
            margin-bottom: 0.5rem;
        }

        .work-price-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            border-top: 1px solid var(--border);
            padding-top: 1.5rem;
            margin-top: 1rem;
        }

        .work-price {
            font-family: var(--ff-disp);
            font-size: 1.5rem;
            font-weight: 300;
            letter-spacing: 0.02em;
            color: var(--muted);
            transition: color 0.4s var(--ease);
        }

        .work-card:hover .work-price {
            color: var(--clay);
        }

        .work-acquire {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: var(--char);
            display: flex;
            align-items: center;
            gap: 0.6rem;
            transition: color 0.3s;
        }

        .work-acquire svg {
            transition: transform 0.4s var(--ease);
        }

        .work-acquire:hover {
            color: var(--clay);
        }

        .work-acquire:hover svg {
            transform: translateX(6px);
        }


/* ====================================================
           DARK MANIFESTO SECTION
        ==================================================== */
        .manifesto {
            background: var(--char);
            color: var(--ivory);
            padding: 20vh 7vw;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 8vw;
            align-items: center;
            position: relative;
            overflow: hidden;
        }

        .manifesto::before {
            content: '01';
            position: absolute;
            top: 50%;
            right: -2vw;
            transform: translateY(-50%);
            font-family: var(--ff-disp);
            font-size: 32vw;
            color: rgba(250, 248, 245, 0.03);
            line-height: 1;
            pointer-events: none;
        }

        .manifesto-left,
        .manifesto-right {
            position: relative;
            z-index: 1;
        }

        .manifesto-heading {
            font-family: var(--ff-disp);
            font-size: clamp(3rem, 5vw, 5.5rem);
            font-weight: 300;
            line-height: 1.1;
            letter-spacing: -0.015em;
            margin-bottom: 3.5rem;
            color: var(--ivory);
        }

        .manifesto-heading em {
            font-style: italic;
            color: var(--clay-lt);
        }

        .manifesto-rule {
            width: 1px;
            height: 120px;
            background: linear-gradient(to bottom, var(--clay-lt), transparent);
            margin-bottom: 3rem;
        }

        .manifesto-subheading {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: var(--clay-lt);
            margin-top: -1rem;
            /* Pulls it slightly closer to the faded line */
        }

        .manifesto-body {
            font-size: 1.15rem;
            line-height: 1.9;
            color: rgba(250, 248, 245, 0.6);
            font-weight: 400;
            max-width: 500px;
        }

        .manifesto-body+.manifesto-body {
            margin-top: 2rem;
        }
        
        
        
         /* ====================================================
           ARTIST SECTION
        ==================================================== */
        .artist-section {
            background: var(--char);
            color: var(--ivory);
            padding: 20vh 7vw;
            border-top: 1px solid var(--border-d);
            position: relative;
            overflow: hidden;
        }

        .artist-watermark {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            font-family: var(--ff-disp);
            font-size: 38vw;
            color: rgba(250, 248, 245, 0.02);
            line-height: 1;
            pointer-events: none;
            white-space: nowrap;
            letter-spacing: -0.05em;
        }

        .artist-grid {
            max-width: 1400px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: 5fr 6fr;
            gap: 10vw;
            align-items: center;
            position: relative;
            z-index: 2;
        }

        .artist-visual {
            position: relative;
        }

        .artist-photo-main {
            width: 100%;
            aspect-ratio: 3/4;
            overflow: hidden;
            position: relative;
        }

        .artist-photo-main::before {
            content: '';
            position: absolute;
            top: -5%;
            left: -5%;
            width: 100%;
            height: 100%;
            border: 1px solid rgba(250, 248, 245, 0.15);
            z-index: 0;
            pointer-events: none;
            transition: transform 1s var(--ease);
        }

        .artist-photo-main:hover::before {
            transform: translate(3%, 3%);
        }

        .artist-photo-main img {
            position: relative;
            z-index: 1;
            filter: grayscale(20%) contrast(1.1);
        }

        .artist-arch {
            position: absolute;
            bottom: -15%;
            right: -20%;
            width: 55%;
            aspect-ratio: 1/1.35;
            border-radius: 500px 500px 0 0;
            overflow: hidden;
            background: #23211C;
            box-shadow: 0 40px 80px rgba(0, 0, 0, 0.6);
            z-index: 5;
            display: flex;
            justify-content: center;
        }

        .artist-arch img {
            object-fit: cover;
            width: 100%;
            height: 100%;
        }

        .artist-content {
            position: relative;
            z-index: 2;
        }

        .artist-heading {
            font-family: var(--ff-disp);
            font-size: clamp(3.5rem, 6vw, 6rem);
            font-weight: 300;
            line-height: 1;
            margin-bottom: 2rem;
            margin-left: -4vw;
            color: var(--ivory);
            letter-spacing: -0.02em;
        }

        .artist-heading em {
            font-style: italic;
            color: var(--clay-lt);
        }

        .artist-bio-block {
            border-left: 1px solid var(--clay-lt);
            padding-left: 3rem;
            margin-top: 3rem;
        }

        .artist-bio {
            font-size: 1.15rem;
            line-height: 1.9;
            color: rgba(250, 248, 245, 0.65);
            font-weight: 400;
            margin-bottom: 1.8rem;
        }

        .artist-signature {
            font-family: var(--ff-disp);
            font-size: clamp(3rem, 4.5vw, 4rem);
            font-style: italic;
            color: var(--clay-lt);
            margin-top: 4rem;
            padding-left: 3rem;
            letter-spacing: 0.04em;
            opacity: 0.8;
            line-height: 1;
        }

        .artist-subtext {
            font-size: 0.65rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: rgba(250, 248, 245, 0.4);
            padding-left: 3.2rem;
            margin-top: 0.8rem;
            display: block;
        }

        /* ====================================================
           QUOTE SECTION
        ==================================================== */
        .quote-section {
            padding: 20vh 7vw;
            background: var(--ivory);
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .quote-bg-char {
            position: absolute;
            top: -10%;
            left: 50%;
            transform: translateX(-50%);
            font-family: var(--ff-disp);
            font-size: 60vw;
            color: var(--char);
            opacity: 0.02;
            line-height: 1;
            pointer-events: none;
        }

        .quote-bg-img {
            position: absolute;
            bottom: -15%;
            right: -8%;
            width: 45vw;
            max-width: 600px;
            opacity: 0.06;
            transform: rotate(-12deg);
            pointer-events: none;
            z-index: 0;
            filter: grayscale(100%) contrast(1.2);
        }

        .quote-inner {
            max-width: 1000px;
            text-align: center;
            position: relative;
            z-index: 1;
        }

        .quote-opener {
            font-family: var(--ff-disp);
            font-size: 7rem;
            line-height: 0.5;
            color: var(--clay);
            opacity: 0.4;
            margin-bottom: 2rem;
        }

        .quote-text {
            font-family: var(--ff-disp);
            font-size: clamp(2.2rem, 4vw, 3.5rem);
            font-weight: 300;
            line-height: 1.4;
            color: var(--char);
            font-style: italic;
            letter-spacing: -0.01em;
        }

        .quote-byline {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 1.2rem;
            margin-top: 4rem;
        }

        .quote-dash {
            width: 40px;
            height: 1.5px;
            background: var(--clay);
        }

        .quote-author {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: var(--clay);
        }


/* ====================================================
           CONTACT / INQUIRY
        ==================================================== */
        .inquire-section {
            padding: 20vh 7vw;
            background: #FDFBFA;
            border-top: 1px solid var(--border);
        }

        .inquire-inner {
            max-width: 1400px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12vw;
        }

        .inquire-kicker {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: var(--clay);
            margin-bottom: 2.5rem;
        }

        .inquire-title {
            font-family: var(--ff-disp);
            font-size: clamp(3.5rem, 5vw, 5.5rem);
            font-weight: 300;
            line-height: 1.05;
            letter-spacing: -0.02em;
            margin-bottom: 2.5rem;
        }

        .inquire-title em {
            font-style: italic;
            color: var(--clay);
        }

        .inquire-desc {
            font-size: 1.1rem;
            line-height: 1.9;
            color: var(--muted);
            max-width: 85%;
            margin-bottom: 5rem;
        }

        .contact-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 4rem;
            border-top: 1px solid var(--border);
            padding-top: 4rem;
        }

        .contact-blk h4 {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: var(--char);
            margin-bottom: 1rem;
        }

        .contact-blk p {
            font-size: 1rem;
            color: var(--muted);
            line-height: 1.8;
        }

        /* Elevated Form */
        .form-wrapper {
            background: #ffffff;
            padding: 3.5rem;
            border: 1px solid var(--border);
            box-shadow: 0 30px 60px -15px rgba(22, 21, 18, 0.05);
            border-radius: 2px;
        }

        .form-subhead {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: var(--char);
            margin-bottom: 2.5rem;
            display: flex;
            align-items: center;
            gap: 1.2rem;
        }

        .form-subhead::after {
            content: '';
            flex: 1;
            height: 1px;
            background: var(--border);
        }

        .inquire-form {
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }

        .form-field {
            position: relative;
            border-bottom: 1px solid var(--border);
            padding: 2.2rem 0 0.8rem;
            transition: border-color 0.4s;
        }

        .field-icon {
            position: absolute;
            left: 0;
            top: 2.5rem;
            color: var(--muted);
            transition: color 0.4s var(--ease), transform 0.4s var(--ease);
            pointer-events: none;
        }

        .form-label {
            position: absolute;
            top: 2.2rem;
            left: 2.2rem;
            font-size: 0.85rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.18em;
            color: var(--muted);
            transition: all 0.4s var(--ease);
            pointer-events: none;
        }

        .form-field.active .form-label,
        .form-field.filled .form-label {
            top: 0.5rem;
            left: 0;
            font-size: 0.65rem;
            color: var(--clay);
        }

        .form-field.active .field-icon,
        .form-field.filled .field-icon {
            color: var(--clay);
            transform: scale(0.9);
        }

        .form-field input,
        .form-field select,
        .form-field textarea {
            width: 100%;
            background: transparent;
            border: none;
            outline: none;
            font-family: var(--ff-ui);
            font-size: 1.1rem;
            color: var(--char);
            padding: 0.4rem 0 0 2.2rem;
            -webkit-appearance: none;
            border-radius: 0;
        }

        .form-field select {
            cursor: pointer;
            padding-right: 1.5rem;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237D7870' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right calc(0.4rem + 2px) center;
        }

        .form-field.active select {
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23A34F3D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='18 15 12 9 6 15'%3E%3C/polyline%3E%3C/svg%3E");
        }

        .form-field textarea {
            resize: none;
            min-height: 100px;
        }

        .form-field::after {
            content: '';
            position: absolute;
            bottom: -1px;
            left: 0;
            width: 0;
            height: 1.5px;
            background: var(--clay);
            transition: width 0.6s var(--ease-out);
        }

        .form-field.active::after {
            width: 100%;
        }

        .form-submit-row {
            margin-top: 3.5rem;
        }


/* ====================================================
   FOOTER BREAKOUT (FORCES 100% WIDTH OVERRIDES)
==================================================== */
/* Target the immediate parent Elementor Container */
.elementor-element-af4a58c {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    position: relative !important;
    padding: 0 !important;
}

/* Force the child widget container to mirror full width */
.elementor-element-af4a58c .e-con-child {
    width: 100% !important;
    max-width: 100% !important;
}

/* Base structural adjustments for site-footer to fill canvas */
.site-footer {
    width: 100% !important;
    min-width: 100vw !important;
    background-color: var(--char-2); /* Pulls original file background color */
    padding: 15vh 7vw 0 !important;
    margin: 0 !important;
    box-sizing: border-box;
}

/* Maintain inner row centering alignments from your design file */
.footer-top, 
.footer-bottom-row {
    max-width: 1400px;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
}

        /* ====================================================
           FOOTER
        ==================================================== */
        .site-footer {
            background: var(--char-2);
            color: var(--ivory);
            padding: 15vh 7vw 0;
            position: relative;
            overflow: hidden;
        }

        .footer-top {
            max-width: 1400px;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            padding-bottom: 10vh;
            border-bottom: 1px solid var(--border-d);
            gap: 8vw;
        }

        .footer-brand-logo {
            width: 170px;
            filter: brightness(0) invert(1);
            opacity: 0.9;
            display: block;
        }

        .footer-brand-desc {
            margin-top: 1.8rem;
            font-size: 0.95rem;
            line-height: 1.8;
            color: rgba(250, 248, 245, 0.55);
            max-width: 280px;
        }

        .footer-nav {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 5vw;
            flex: 1;
        }

        .footer-col h5 {
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.25em;
            color: var(--clay-lt);
            margin-bottom: 2.5rem;
        }

        .footer-col ul li+li {
            margin-top: 1.2rem;
        }

        .footer-col ul a {
            font-size: 1rem;
            color: rgba(250, 248, 245, 0.6);
            transition: color 0.3s;
            font-weight: 400;
        }

        .footer-col ul a:hover {
            color: var(--ivory);
        }

        .footer-collector {
            font-size: 1rem;
            color: rgba(250, 248, 245, 0.55);
            line-height: 1.9;
            margin-bottom: 1.5rem;
        }

        .footer-newsletter {
            display: flex;
            align-items: center;
            border-bottom: 1px solid rgba(250, 248, 245, 0.3);
            padding-bottom: 0.8rem;
            transition: border-color 0.4s var(--ease);
        }

        .footer-newsletter:focus-within {
            border-color: var(--clay-lt);
        }

        .footer-newsletter input {
            background: transparent;
            border: none;
            outline: none;
            color: var(--ivory);
            font-family: var(--ff-ui);
            font-size: 0.9rem;
            width: 100%;
            padding: 0;
            -webkit-appearance: none;
        }

        .footer-newsletter input::placeholder {
            color: rgba(250, 248, 245, 0.4);
        }

        .footer-newsletter button {
            background: none;
            border: none;
            color: var(--clay-lt);
            cursor: pointer;
            padding: 0 0 0 1rem;
            display: flex;
            align-items: center;
            transition: color 0.3s, transform 0.4s var(--ease);
        }

        .footer-newsletter button:hover {
            color: var(--ivory);
            transform: translateX(4px);
        }

        .footer-bottom-row {
            max-width: 1400px;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 4vh 0 5vh;
            border-bottom: 1px solid var(--border-d);
        }

        .footer-copy {
            font-size: 0.7rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: rgba(250, 248, 245, 0.4);
        }

        .footer-legal {
            display: flex;
            gap: 2rem;
        }

        .footer-legal a {
            font-size: 0.65rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.16em;
            color: rgba(250, 248, 245, 0.4);
            transition: color 0.3s;
        }

        .footer-legal a:hover {
            color: var(--ivory);
        }

        .footer-back-top {
            display: inline-flex;
            align-items: center;
            gap: 0.6rem;
            font-size: 0.7rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            color: rgba(250, 248, 245, 0.4);
            transition: color 0.3s;
        }

        .footer-back-top:hover {
            color: var(--ivory);
        }

        .footer-back-top svg {
            transition: transform 0.4s var(--ease);
        }

        .footer-back-top:hover svg {
            transform: translateY(-5px);
        }

        .footer-massive {
            font-family: var(--ff-disp);
            font-size: clamp(10vw, 15vw, 250px);
            line-height: 0.75;
            color: rgba(250, 248, 245, 0.04);
            white-space: nowrap;
            letter-spacing: -0.03em;
            text-align: center;
            padding: 4vh 0 0;
            pointer-events: none;
        }

        /* ====================================================
           SCROLL REVEAL UTILITY
        ==================================================== */
        .reveal-el {
            opacity: 0;
            transform: translateY(50px);
            transition: opacity 1.2s var(--ease-out), transform 1.2s var(--ease-out);
        }

        .reveal-el.in-view {
            opacity: 1;
            transform: translateY(0);
        }

        .reveal-el:nth-child(2) {
            transition-delay: 0.15s;
        }

        .reveal-el:nth-child(3) {
            transition-delay: 0.3s;
        }

        .reveal-el:nth-child(4) {
            transition-delay: 0.45s;
        }

        /* ====================================================
           RESPONSIVE
        ==================================================== */
        .desktop-only {
            display: flex;
        }

        @media (max-width: 1100px) {
            .hero {
                grid-template-columns: 1fr;
                min-height: auto;
                padding-top: 100px;
            }

            .hero-left {
                padding: 80px 7vw 8vh;
            }

            .hero-right {
                height: 80vw;
            }

            .stats-section {
                grid-template-columns: repeat(2, 1fr);
                gap: 2rem 0;
            }

            .stat-item {
                border-bottom: 1px solid var(--border);
                padding: 3rem 2rem;
            }

            .stat-item:nth-child(2),
            .stat-item:nth-child(4) {
                border-right: none;
            }

            .philosophy-inner {
                grid-template-columns: 1fr;
                gap: 4rem;
            }

            .works-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 6vw;
            }

            .works-head {
                flex-direction: column;
                align-items: flex-start;
                gap: 2.5rem;
            }

            .works-title {
                max-width: 100%;
            }

            .works-desc {
                text-align: left;
                margin-top: 1.5rem;
            }

            .manifesto {
                grid-template-columns: 1fr;
                gap: 8vh;
            }

            .artist-grid {
                grid-template-columns: 1fr;
            }

            .artist-heading {
                margin-left: 0;
            }

            .artist-arch {
                right: 0;
                bottom: -8%;
                width: 50%;
            }

            .inquire-inner {
                grid-template-columns: 1fr;
            }

            .footer-top {
                flex-direction: column;
            }

            .footer-nav {
                grid-template-columns: 1fr 1fr;
            }
        }

        @media (max-width: 700px) {
            #main-nav {
                padding: 0 6vw;
                height: 80px;
                grid-template-columns: auto 1fr;
            }

            #main-nav.scrolled {
                height: 70px;
            }

            .desktop-only {
                display: none !important;
            }

            .mobile-menu-toggle {
                display: flex;
            }

            .nav-group.center {
                align-items: flex-end;
            }

            .nav-brand img {
                width: 100px;
            }

            .hero-bg-word {
                font-size: 25vw;
                left: 5%;
                top: 40%;
            }

            .hero-title {
                font-size: clamp(4rem, 12vw, 6.5rem);
            }

            .stats-section {
                grid-template-columns: 1fr;
                padding: 5vh 6vw;
            }

            .stat-item {
                border-right: none;
                padding: 2.5rem 0;
            }

            .philosophy-section {
                padding: 10vh 6vw;
            }

            .philosophy-heading {
                font-size: clamp(2.5rem, 10vw, 3.5rem);
            }

            .philosophy-rule {
                height: 60px;
            }

            .works-grid {
                grid-template-columns: 1fr;
                gap: 10vw;
            }

            .works-title {
                font-size: 3rem;
            }

            .work-card {
                width: 100%;
                min-width: 280px;
            }

            .contact-grid {
                grid-template-columns: 1fr;
                gap: 2rem;
            }

            .footer-nav {
                grid-template-columns: 1fr;
                gap: 3rem;
            }

            .footer-bottom-row {
                flex-direction: column;
                gap: 1.5rem;
                text-align: center;
            }

            .footer-legal {
                flex-direction: column;
                gap: 0.8rem;
            }

            .footer-massive {
                font-size: 18vw;
                padding-top: 2vh;
            }
        }/* End custom CSS */