/* Global Reset */
body {font-family:"Inter", sans-serif;overflow-x:hidden;width:100%;max-width:100%}

/* Container width optimization */
.site-content {max-width:1200px; margin:0 auto}

/* Section spacing */
.section {padding:80px 0}

/* Smooth transitions */
a, button {transition:all 0.3s ease}

/* Custom header styling placeholder */
.site-header {border-bottom:1px solid rgba(0, 0, 0, 0.05)}

.work-main,
.work-main__media {max-width:100%;overflow-x:hidden}

/* ============================= */
/* GENERAL */
/* ============================= */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.site-main {max-width:1600px;padding:40px 20px;margin:0 auto !important}
.entry-header,
.site-content {margin:10px 0 40px 0}
.inside-site-info {padding:20px 20px !important}
.footer-widgets .widget {font-size:18px}
.footer-widgets .widget a {text-decoration:none}
.site-footer {background:#fff}
.inside-article {padding:0}
.page-id-34 .site-main {padding:0 !important; margin-top:-70px !important}
@media (max-width:767px) {
    .page-id-34 .site-main {margin-top:140px !important}
}
.page-id-34 .entry-header,
.page-id-34 .entry-content {margin:0 !important}

/* ============================= */
/* HEADER BASE */
/* ============================= */
body.home .primal-header {background:transparent;backdrop-filter:blur(0)}
.primal-header {position:fixed;top:0;left:0;width:100%;padding:18px 2px 15px 22px;z-index:1000;background:rgba(0, 0, 0, 0.85);backdrop-filter:blur(10px);transition:all .5s ease}
.primal-container {display:flex;justify-content:space-between;align-items:center;width:100%}

/* ============================= */
/* HEADER LOGO */
/* ============================= */
.primal-logo, .primal-logo a {display:block}
.primal-logo a,
.primal-logo a:hover,
.primal-logo a:visited,
.primal-logo a:active,
.primal-logo a:link {text-decoration:none; color:#E1251B}
body.home .primal-logo {opacity:0;pointer-events:none;line-height:1}
.mobile-menu.active .logo {color:black}

/* ============================= */
/* HEADER DESKTOP BUTTONS */
/* ============================= */
.primal-header-actions {display:flex;gap:15px;align-items:center;margin-right:33px}
@media (max-width:768px) {
    .primal-header-actions {display:none}
}
.btn {display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:30px;font-size:14px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all 0.3s ease}
.btn-white {background:#ffffff;color:#000}
.btn-white:hover {color:#333;background:#e2e2e2}
.btn-red {background:#E1251B;color:#fff}
.btn-red:hover {background:#c61a1f}
.btn-dark {background:#000;color:#fff;gap:10px}

/* ============================= */
/* HAMBURGER */
/* ============================= */
.burger {display:none}
@media (max-width:768px) {
    .burger {display:block}
}
.primal-header .menu-toggle {background:none;border:none;cursor:pointer}
.primal-header .menu-toggle span:first-child {margin-top:0}
.primal-header .menu-toggle span {display:flex;width:30px;height:4px;background:#fff;margin-top:7px;margin-bottom:6px;align-items:flex-end;justify-content:flex-end;margin-left:auto}
.hamburger {display:flex;flex-direction:column;gap:4px;justify-content:flex-end;align-items:end}
.hamburger span {width:18px;height:3px;background:#fff}
.hamburger span.red-bar {width:28px;height:4px;background:#e31e24}

/* ============================= */
/* STICKY HEADER */
/* ============================= */
.primal-header.sticky {background:rgba(0, 0, 0, 0.85)!important;backdrop-filter:blur(10px) !important}
.primal-header.sticky .primal-logo {opacity:1}

/* ============================= */
/* UNIVERSAL DROPDOWN SYSTEM */
/* ============================= */
.dropdown-wrapper {position:relative}
.dropdown-panel {position:absolute;top:60px;right:0;width:320px;opacity:0;visibility:hidden;transform:translateY(10px);transition:all 0.3s ease;z-index:1000}
.dropdown-panel .dropdown-content {padding:10px 10px 10px 30px;border-radius:20px;box-shadow:0 25px 50px rgba(0, 0, 0, 0.2);margin-bottom:10px}
.dropdown-panel.active {opacity:1;visibility:visible;transform:translateY(0)}
.red-panel {background:#e31e24}
.black-panel {background:#000}
.dropdown-close {position:absolute;top:0;right:0;background:none;border:none;color:#fff;font-size:30px;cursor:pointer;font-weight:300}
button.dropdown-close:hover {opacity:0.7;background:none !important}
.dropdown-panel ul {list-style:none;padding:0;margin:20px 0}
.dropdown-panel ul li {margin-bottom:18px;text-transform:uppercase}
.dropdown-panel ul a {color:#fff;text-decoration:none;font-size:18px;font-weight:600}
.bottom-cta {display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-radius:20px;text-decoration:none;font-weight:600;background:rgba(0, 0, 0, 1);color:#fff}
.bottom-cta .icon svg {height:35px; width:auto}
a.bottom-cta:hover {color:#aaa !important}
#portfolio-panel .bottom-cta {background:#e31e24}
.dark-cta {background:#111}

/* ================================== */
/* DESKTOP MENU - LET'S TALK DROPDOWN */
/* ================================== */
.lets-talk-wrapper {position:relative}
.lets-talk-dropdown {position:absolute;top:60px;right:-265px;width:450px;background:#FFF;padding:30px;border-radius:20px;box-shadow:0 25px 50px rgba(0, 0, 0, 0.25);opacity:0;visibility:hidden;transform:translateY(10px);transition:all 0.3s ease;z-index:1000}
.lets-talk-dropdown h3 {text-transform:uppercase;font-weight:700;font-size:22px}
.lets-talk-dropdown.active {opacity:1;visibility:visible;transform:translateY(0)}
.lets-talk-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;position:absolute;right:0;top:0}
.lets-talk-close {background:none;border:none;font-size:26px;cursor:pointer;color:#000 !important;z-index:200;background:white;border-radius:100%;padding:5px 16px}
.lets-talk-close:hover {opacity:0.7;background:none !important;color:#000 !important}
.lets-talk-form input {width:100%;padding:20px 60px 20px 20px;border-radius:50px;border:none;font-size:16px;background:#dcdcdc;outline:none}
.submit-arrow {position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:24px;cursor:pointer}
.lets-talk-title {font-size:20px;font-weight:800;}

/* ============================= */
/* HERO SECTION */
/* ============================= */
.primal-hero {position:relative;height:70vh;overflow:hidden}
.hero-video {position:absolute;top:-7px;left:0;width:100%;height:100%;object-fit:cover;z-index:1}
.hero-video .hero-layer {opacity:0;transition:opacity 0.8s ease}
.hero-video .hero-layer.active {opacity:1}
.hero-video .hero-layer img,
.hero-video .hero-layer iframe {
    position:absolute;
    top:50%;
    left:50%;
    width:100%;
    height:56.25vw;
    min-height:100%;
    min-width:177.78vh;
    transform:translate(-50%, -50%);
    object-fit:cover;
    pointer-events:none;
    max-width:inherit;
}
.hero-overlay {position:absolute;width:100%;height:100%;background:rgba(0, 0, 0, 0);z-index:2}
.hero-content {position:relative;z-index:3;height:100%;display:flex;justify-content:center;align-items:center}
.hero-inner {display:flex;flex-direction:column;align-items:center;transform:translateY(-32%)}
.hero-logo {width:822px}
.hero-video--vimeo {position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden}
.hero-video--vimeo iframe {position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:100%;min-width:177.78vh;transform:translate(-50%, -50%);pointer-events:none}
.hero-3d {perspective:500px; margin-top:2rem}
:root {--heroPrismWidth:739px;--heroPrismHeight:100px;--heroAnimationDuration:8s;--heroAnimationTime:var(--heroAnimationDuration) infinite ease-in-out;--heroFont:bold 45px/1 sans-serif}
.hero-mobile-ctabtn {display:none;justify-content:space-around;align-items:center;width:100%;align-self:flex-end;margin-bottom:100px;z-index:500}
.hero-mobile-ctabtn > div {width:50px;display:flex;justify-content:center}
.hero-mobile-ctabtn svg {height:40px;width:auto;display:block}

/* Hero phone icon — tappable */
.hero-mobile-ctabtn div:first-child {
    cursor:pointer;
    -webkit-tap-highlight-color:transparent}
.hero-mobile-ctabtn div:first-child svg {transition:opacity 0.2s}
.hero-mobile-ctabtn div:first-child:active svg {opacity:0.7}

@media (min-width:2561px) {
    .hero-3d {perspective:1500px; margin-top:5rem}
    .hero-logo {width:1228px}
    :root {--heroPrismWidth:1167px;--heroPrismHeight:158px;--heroFont:bold 75px/1 sans-serif}
}
@media (max-width:1024px) {
    .hero-3d {margin-top:2rem}
    .hero-logo {width:600px}
    :root {--heroPrismWidth:556px;--heroPrismHeight:73px;--heroFont:bold 33px/1 sans-serif}
}
@media (max-width:768px) {
    .hero-3d {margin-top:1.5rem}
    .hero-logo {width:450px}
    :root {--heroPrismWidth:419px;--heroPrismHeight:67px;--heroFont:bold 28px/1 sans-serif}
}
@media (max-width:480px) {
    .hero-mobile-ctabtn {display:flex}
    .primal-hero {position:relative;height:100dvh;overflow:hidden}
    .hero-inner {width:86%;position:absolute;top:0;height:100%;transform:translateY(0)}
    .hero-3d {display:flex;height:100%;width:97%;justify-content:center;align-items:center;perspective:600px;transform:translateY(10%)}
    .hero-logo {width:100%;position:absolute;bottom:calc(100% - 144px)}
    :root {--spacing:35px;--heroPrismWidth:100%;--heroPrismHeight:65px;--heroFont:bold 24px/1 sans-serif}
}

.hero-3d .prism {width:var(--heroPrismWidth);height:var(--heroPrismHeight);position:relative;transform-style:preserve-3d;animation:spin var(--heroAnimationTime)}
.hero-3d .prism .face {text-transform:uppercase;position:absolute;width:var(--heroPrismWidth);height:var(--heroPrismHeight);background:#E1251B;backface-visibility:hidden;overflow:hidden;color:white;font:var(--heroFont);display:flex;align-items:center;justify-content:center}
.hero-3d .prism .face::after {content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2;opacity:0;background:linear-gradient(180deg, rgba(255,255,255,0.9), rgba(255,255,255,0.3) 40%, rgba(0,0,0,0))}
.hero-3d .prism .face::before {content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:3;opacity:0;background:linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,0.6) 50%, rgba(0,0,0,1) 100%)}
.hero-3d .prism .f1 {transform:rotateX(0deg) translateZ(calc(var(--heroPrismHeight) / 2))}
.hero-3d .prism .f2 {transform:rotateX(90deg) translateZ(calc(var(--heroPrismHeight) / 2))}
.hero-3d .prism .f3 {transform:rotateX(180deg) translateZ(calc(var(--heroPrismHeight) / 2))}
.hero-3d .prism .f4 {transform:rotateX(-90deg) translateZ(calc(var(--heroPrismHeight) / 2))}
.hero-3d .prism .f1::after {animation:f1light var(--heroAnimationTime)}
.hero-3d .prism .f1::before {animation:f1shadow var(--heroAnimationTime)}
.hero-3d .prism .f2::after {animation:f2light var(--heroAnimationTime)}
.hero-3d .prism .f2::before {animation:f2shadow var(--heroAnimationTime)}
.hero-3d .prism .f3::after {animation:f3light var(--heroAnimationTime)}
.hero-3d .prism .f3::before {animation:f3shadow var(--heroAnimationTime)}
.hero-3d .prism .f4::after {animation:f4light var(--heroAnimationTime)}
.hero-3d .prism .f4::before {animation:f4shadow var(--heroAnimationTime)}
@keyframes f1light  {95%{opacity:0}96%{opacity:1}100%{opacity:0}}
@keyframes f1shadow {21%{opacity:0}25%{opacity:1}26%{opacity:0}}
@keyframes f2light  {21%{opacity:1}25%{opacity:0}}
@keyframes f2shadow {46%{opacity:0}50%{opacity:1}51%{opacity:0}}
@keyframes f3light  {46%{opacity:1}50%{opacity:0}}
@keyframes f3shadow {71%{opacity:0}75%{opacity:1}6%{opacity:0}}
@keyframes f4light  {71%{opacity:1}75%{opacity:0}}
@keyframes f4shadow {96%{opacity:0}100%{opacity:1}}
@keyframes spin {
    0%   {transform:rotateX(0deg)}
    21%  {transform:rotateX(0deg)}
    25%  {transform:rotateX(-90deg)}
    46%  {transform:rotateX(-90deg)}
    50%  {transform:rotateX(-180deg)}
    71%  {transform:rotateX(-180deg)}
    75%  {transform:rotateX(-270deg)}
    96%  {transform:rotateX(-270deg)}
    100% {transform:rotateX(-360deg)}
}

#scroll-dot {animation:swipeUp 2s infinite;transform-origin:center}
@keyframes swipeUp {
    0%   {transform:translateY(0);opacity:1}
    5%   {transform:translateY(0);opacity:1}
    95%  {transform:translateY(-20px);opacity:0}
    96%  {transform:translateY(0);opacity:0}
    100% {transform:translateY(0);opacity:1}
}

/* ============================= */
/* PARTNERS SECTION */
/* ============================= */
.partners-section {padding:90px 0 60px;background:#000}
.partners-title {color:#E1251B;font-weight:600;padding-left:75px;margin-bottom:40px}
@media (max-width:480px) {
    .partners-section {padding:100px 0 40px}
    .partners-title {padding-left:25px;margin-bottom:0}
}

.partners-section .swiper {margin-bottom:80px}
.partners-section .swiper.partnersSwiperBottom {margin-bottom:20px;margin-top:30px}
.partners-section .swiper-slide {text-align:center}
.partners-section img {max-height:120px;width:auto;filter:grayscale(100%);opacity:0.7;transition:0.3s ease}
.partners-section img:hover {filter:grayscale(0%);opacity:1}
.partnersSwiperTop .swiper-wrapper,
.partnersSwiperBottom .swiper-wrapper {transition-timing-function:linear !important;will-change:transform}
.partnersSwiperTop,
.partnersSwiperBottom {overflow:hidden}

/* ============================= */
/* FEATURED WORK SECTION */
/* ============================= */
.featured-work {margin:120px 50px}
.home .featured-work {margin:50px 50px}
.featured-work h2 {font-size:45px;margin-bottom:20px;line-height:1.2em;font-weight:700;color:#000}
.works-grid {display:grid;grid-template-columns:repeat(3, 1fr);gap:60px}
.works-card {position:relative;overflow:hidden;aspect-ratio:16 / 10;background:#111;border-radius:25px}
.works-card__text {padding:10px 0 0 5px}
.works-card__link {display:block;text-decoration:none;color:inherit}
.works-card__media {position:absolute;inset:0}
.works-card__img {width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s cubic-bezier(0.16,1,0.3,1), opacity 0.4s ease}
.works-card:hover .works-card__img {transform:scale(1.04)}
.works-card__link::after {content:'';position:absolute;inset:0;background:rgba(0,0,0,0);transition:background 0.35s ease}
.works-card:hover .works-card__link::after {background:rgba(0,0,0,0.45)}
.works-card__title {font-size:34px;font-weight:400;margin:0 0 4px;line-height:1.2;text-transform:uppercase}
.works-card__services {display:flex;font-family:'Inter', sans-serif;font-size:12px;line-height:1.5;font-weight:400;text-transform:uppercase;margin:0;flex-wrap:wrap}
.work-page .work-services {display:flex;font-family:'Inter', sans-serif;font-size:14px;font-weight:400;margin:0;flex-wrap:wrap}
.works-card__services span, .work-services span {display:flex;font-weight:bold;color:#E1251B;font-size:28px;line-height:0;padding:9px 6px}
.works-grid--featured .works-card {background:#e0e0e0}
.featured-work .works-card__title,
.featured-work .works-card__services {color:#000}
.work-media img,
.work-media iframe {position:absolute;inset:0;width:100%;height:100%}
.work-media iframe {opacity:0;transition:opacity 0.2s ease;pointer-events:none;z-index:2;transform:scale(1.2)}
.work-media img {z-index:1}
.work-item {opacity:0;transform:translateY(20px);transition:opacity 0.5s ease, transform 0.5s ease}
.work-item.aos-animate {opacity:1}
.work-item:hover {transform:scale(1.03)}
.work-item .portfolio-image {opacity:0;transition:opacity 0.5s ease;transition-delay:calc(var(--j) * 500ms)}
.work-item.aos-animate .portfolio-image {opacity:1}
.work-item .portfolio-title,
.work-item .work-services {opacity:0;transform:translateX(-30px);transition:opacity 0.5s ease, transform 0.5s ease;transition-delay:calc(var(--j) * 500ms)}
.work-icon {position:absolute;top:14px;right:14px;z-index:3;width:36px;height:36px;pointer-events:none;opacity:1;transition:opacity 0.3s ease;fill:white;filter:drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6))}
.works-card:hover .work-icon {opacity:1}
.work-item.aos-animate .portfolio-title,
.work-item.aos-animate .work-services {opacity:1;transform:translateX(0)}
@media (max-width:768px) {
    .works-grid {grid-template-columns:1fr;gap:40px}
    .works-card {aspect-ratio:16 / 9;border-radius:12px}
}
@media (min-width:769px) and (max-width:1024px) {
    .works-grid {grid-template-columns:repeat(2, 1fr)}
}
@media (max-width:480px) {
    .featured-work {margin:35px 20px}
    .featured-work h2 {font-size:38px;margin:0;font-weight:700}
    .work-page {margin-top:12px !important}
    .home .featured-work {margin:24px 22px 60px !important}
}

/* ============================= */
/* PORTFOLIO CATEGORY SECTION */
/* ============================= */
.portfolio-category {margin:60px 50px 110px}
.portfolio-category h2 {font-size:60px;margin-bottom:20px;line-height:1.2em;font-weight:700;color:#FFF;text-transform:uppercase}
.portfolio-category .works-card__title,
.portfolio-category .works-card__services {color:#FFF}
.portfolio-category__description {margin:0 0 36px;font-size:x-large;font-weight:200;text-align:center}
.tax-work_categories {background:#000}
@media (max-width:480px) {
    .portfolio-category {margin:35px 20px}
    .portfolio-category h2 {font-size:48px;margin:0}
    .portfolio-category__description {font-size:20px}
}

/* ============================= */
/* INNER HERO - VIMEO OPTIMIZADO */
/* ============================= */
.inner-hero {
    position: relative;
    height: 55vh;
    overflow: hidden;
    margin-top: 78px;
    background: #000;
}

.inner-hero-video {
    position: absolute;
    inset: 0;
    background: #000;
    overflow: hidden;
}

.hero-layer {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 2s ease;
    will-change: opacity;
}

.hero-layer.active {
    opacity: 1;
    z-index: 2;
}

.hero-layer:not(.active) {
    z-index: 1;
}

.hero-layer iframe {
    opacity: 1 !important;
}

.hero-layer .vimeo-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-width: 177.78vh;
    min-height: 100%;
    transform: translate(-50%, -50%);
    overflow: hidden;
}

.hero-layer img,
.hero-layer iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
}

.hero-layer img { z-index: 1; }
.hero-layer iframe {
    z-index: 2;
    opacity: 0;
    transition: opacity 1s ease;
}

.hero-layer.video-ready iframe { opacity: 1; }
.hero-layer.video-ready img { opacity: 0; }

/* Overlay */
.inner-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 3;
}

/* Text */
.inner-hero-content {position:absolute;bottom:0;right:0;z-index:500}
.inner-hero-inner {position:relative}

.hero-thumb,
.hero-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-thumb {
    z-index: 1;
    opacity: 1;
    transition: opacity .8s ease;
}

.hero-thumb.hide {
    opacity: 0;
}

.hero-iframe {
    z-index: 2;
    opacity: 0;
    transition: opacity 1s ease;
    border: 0;
}

.hero-iframe.ready {
    opacity: 1;
}
.inner-hero-inner h1 {
    display: block;
    margin: 0;
    text-align: right;
    text-transform: uppercase;
    font-size: 13vw;
    line-height:1;
    font-weight: 800;
    letter-spacing: -0.05em;
    color: #fff;
    opacity: .75;
    transform: translateY(0.14em);
    -webkit-text-stroke: 3px rgba(0, 0, 0, .2);
    text-stroke: 3px rgba(0, 0, 0, .2);
    paint-order: stroke fill;
}
/* Mobile */
@media (max-width: 768px) {
    .inner-hero {height:50vh;margin-top: 0 !important; }
}
@media (max-width: 480px) {
    .inner-hero { height: 40vh; }
}
/* ============================= */
/* SINGLE WORK PAGE */
/* ============================= */
.work-page {--red:#e02020;--font:'Inter', sans-serif;--ease:cubic-bezier(0.16, 1, 0.3, 1);font-family:var(--font);min-height:92vh;margin:70px 0 0;user-select:none;cursor:grab}
.work-page:active {cursor:grabbing}
html.is-animating #swup {transition:opacity 0.3s ease, transform 0.35s var(--ease, cubic-bezier(0.16,1,0.3,1))}
html.is-animating.is-leaving[data-direction="next"] #swup {opacity:0;transform:translateX(-60px)}
html.is-animating.is-leaving[data-direction="prev"] #swup {opacity:0;transform:translateX(60px)}
html.is-animating.is-leaving:not([data-direction]) #swup,
html.is-animating.is-leaving[data-direction=""] #swup {opacity:0;transform:translateX(0)}
html.is-animating.is-rendering[data-direction="next"] #swup {opacity:0;transform:translateX(60px)}
html.is-animating.is-rendering[data-direction="prev"] #swup {opacity:0;transform:translateX(-60px)}
html.is-animating.is-rendering:not([data-direction]) #swup,
html.is-animating.is-rendering[data-direction=""] #swup {opacity:0;transform:translateX(0)}
html:not(.is-animating) #swup {opacity:1;/*transform:translateX(0)*/}
body.works-dark {background:#000;color:#fff}
body.works-dark .work-page {--bg:#000000;--text:#ffffff;--text-muted:rgba(255,255,255,0.45);--border:rgba(255,255,255,0.12);--btn-color:#ffffff;--btn-border:#ffffff;background:var(--bg);color:var(--text)}
body.works-dark .work-btn:hover {background:#fff;color:#000}
body.works-dark .work-carousel__btn {background:rgba(255,255,255,0.15);color:#fff}
body.works-dark .work-carousel__btn:hover {background:rgba(255,255,255,0.35)}
body.works-light {background:#f5f5f3;color:#000}
body.works-light .work-page {--bg:#f5f5f3;--text:#000000;--text-muted:rgba(0,0,0,0.4);--border:rgba(0,0,0,0.1);--btn-color:#000000;--btn-border:#000000;background:var(--bg);color:var(--text)}
body.works-light .work-btn:hover {background:#000;color:#fff}
body.works-light .work-carousel__btn {background:rgba(0,0,0,0.25);color:#fff}
body.works-light .work-carousel__btn:hover {background:rgba(0,0,0,0.55)}
body:not(.works-light) .work-page {--bg:#000;--text:#fff;--text-muted:rgba(255,255,255,0.45);--border:rgba(255,255,255,0.12);--btn-color:#fff;--btn-border:#fff}
.work-header {display:flex;align-items:center;padding:28px 48px 0}
.work-header__cat {font-size:clamp(28px, 4vw, 38px);font-weight:800;letter-spacing:-0.02em;line-height:1;text-transform:uppercase}
.work-header__back {color:var(--text);opacity:0.8;transition:opacity 0.2s;display:flex;align-items:center;text-decoration:none;padding:0 0 0 20px}
.work-header__back:hover {opacity:1}
.work-intro {padding:32px 48px 0}
.work-title {font-size:clamp(18px, 2.2vw, 28px);font-weight:700;letter-spacing:-0.01em;margin:0 0 6px;line-height:1.1}
.work-services-line {font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted)}
.work-main {display:grid;grid-template-columns:65fr 35fr;padding:24px 48px 0;align-items:start}
.work-main__media {padding-right:36px;margin-bottom:46px}
.work-main__sidebar {padding-top:4px}
.work-video-wrap {position:relative;width:100%;padding-bottom:56.25%;background:#111;overflow:hidden}
.video-unmute {position:absolute;bottom:20px;left:20px;background:rgba(0, 0, 0, .5);color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;z-index:3}
body.works-light .work-video-wrap {background:#ddd}
.work-video-wrap iframe {position:absolute;inset:0;width:100%;height:100%}
.work-keywords {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.work-keyword {display:inline-block;background:var(--red);color:#fff;letter-spacing:0.06em;text-transform:lowercase;padding:5px 12px;border-radius:2px;font:600 13px / 21px 'Noto serif', serif}
.work-description {font-size:14px;line-height:1.65;margin-bottom:24px;color:var(--text)}
.work-description strong {font-weight:700}
.work-description em {font-style:italic}
.work-description a {color:var(--text);border-bottom:1px solid var(--text-muted);text-decoration:none}
.work-description a:hover {border-color:var(--text)}
.work-buttons {display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.work-btn {display:inline-block;padding:10px 20px;font-family:var(--font);font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;color:var(--btn-color);background:transparent;border:1.5px solid var(--btn-border);cursor:pointer;transition:background 0.2s, color 0.2s;white-space:nowrap}
.work-carousel {position:relative;overflow:hidden;user-select:none}
.work-carousel__track {display:flex;transition:transform 0.5s var(--ease);will-change:transform}
.work-carousel__slide {flex:0 0 100%}
.work-carousel__slide img {width:100%;height:auto;display:block;object-fit:cover}
.work-carousel__btn {position:absolute;top:50%;transform:translateY(-50%);border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background 0.2s;border-radius:2px}
.work-carousel__btn--prev {left:10px}
.work-carousel__btn--next {right:10px}
.work-carousel__thumbs {display:flex;gap:6px;margin-top:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.work-carousel__thumb {width:80px;height:56px;object-fit:cover;cursor:pointer;opacity:0.45;transition:opacity 0.2s, border-color 0.2s;flex-shrink:0;border:2px solid transparent}
.work-carousel__thumb.is-active,
.work-carousel__thumb:hover {opacity:1;border-color:var(--red)}
.work-blocks {padding:48px 0 0 0}
.work-block {margin-bottom:52px}
.work-block__title {font-size:clamp(15px, 1.6vw, 20px);font-weight:700;letter-spacing:-0.01em;margin:0 0 16px}
.work-block--video .work-block__media,
.work-block--photo .work-block__media {width:65%}
.work-block--photo .work-block__media img {width:100%;display:block}
.work-block--gallery {width:100%}
.work-block--gallery .work-block__media {width:100%}
.work-block .work-buttons {margin-top:16px}
.vimeo-popup {position:fixed;inset:0;z-index:-1;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity 0.3s;visibility:hidden}
.vimeo-popup.is-open {pointer-events:all;opacity:1;z-index:9999;visibility:visible}
.vimeo-popup__overlay {position:absolute;inset:0;background:rgba(0,0,0,0.88);cursor:pointer}
.vimeo-popup__box {position:relative;z-index:1;width:min(85vw, calc(80vh * (16/9)));transform:scale(0.95);transition:transform 0.3s var(--ease)}
.vimeo-popup.is-open .vimeo-popup__box {transform:scale(1)}
.vimeo-popup__close {position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;cursor:pointer;opacity:0.7;transition:opacity 0.2s;padding:4px}
.vimeo-popup__close:hover {opacity:1}
.vimeo-popup__player {position:relative;padding-bottom:56.25%;background:#000}
.vimeo-popup__player iframe {position:absolute;inset:0;width:100%;height:100%}

@media (max-width:1024px) {
    .work-header, .work-intro {padding:20px 20px 0}
    .work-main {grid-template-columns:1fr;padding:20px 20px 0}
    .work-main__media {padding-right:0;margin-bottom:24px}
    .work-blocks {padding:32px 20px 0}
    .work-block--video .work-block__media,.work-block--photo .work-block__media {width:100%}
    .work-nav {padding:32px 20px 0;margin-top:32px}
    .work-header__cat {font-size:clamp(22px, 7vw, 32px)}
    .work-title {font-size:22px}
    .work-services-line {font-size:10px}
    .work-description {font-size:14px}
    .work-block__title {font-size:18px}
    .work-page {max-width:100vw}
    .work-main__sidebar {overflow-x:hidden}
    .footer-widgets-container {text-align:left!important}
}
/*@media (min-width:769px) and (max-width:1100px) {
    .work-header, .work-intro, .work-main, .work-blocks, .work-nav {padding-left:32px;padding-right:32px}
    .work-main {grid-template-columns:60fr 40fr}
    .work-block--video .work-block__media,.work-block--photo .work-block__media {width:70%}
}*/

/* ============================= */
/* FOOTER */
/* ============================= */
.inside-footer {padding:70px 20px 70px;background:#fff;}
.footer-widgets-container {padding:80px 20px 50px!important}
/* ============================= */
/* MOBILE MENU */
/* ============================= */
.overlay {position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);opacity:0;visibility:hidden;transition:0.3s;z-index:900}
.primal-header .mobile-menu {position:fixed;top:0;right:-100vw;width:100vw;height:100dvh;background:#e1251b;transition:0.4s ease;z-index:1001;display:flex;flex-direction:column;justify-content:space-between}
.primal-header .mobile-menu.active {right:0}
.overlay.active {opacity:1;visibility:visible}
.primal-header .menu-header {display:flex;justify-content:space-between;align-items:center;padding:5px 20px 0 22px;color:#fff;flex-shrink:0}
.primal-header .close-menu {background:none;border:none;font-size:30px;color:#fff;cursor:pointer;position:relative;right:-15px;top:0;font-weight:600}
.primal-header .menu-inner {padding:0 18px 4px;overflow-y:auto;display:flex;flex-direction:column;flex:1;justify-content:space-between;gap:clamp(0.5rem, 4px, 2rem)}
.primal-header .menu-card {background:#f1f1f1;border-radius:14px;display:flex;flex-direction:column;flex:1;justify-content:space-evenly;padding-top:clamp(0.5rem, 2.6vw, 2rem);padding-right:clamp(0.5rem, 2.6vw, 2rem);padding-bottom:clamp(0.5rem, 2.6vw, 2rem);padding-left:clamp(0.5rem, 6vw, 2rem)}
.primal-header .menu-card:first-child {max-height:155px}
.primal-header .menu-card:first-child ul {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;justify-content:space-around;height:100%}
.primal-header .menu-card:last-child {justify-content:flex-start !important}
.secondary-header-menu {display:flex;height:100%}
#menu-portfolio-1 {padding:0;list-style:none;display:flex;flex-direction:column;align-items:stretch;justify-content:space-around;margin:2px 0 0}
#menu-portfolio-1 .menu-item {text-transform:uppercase}
.dropdown-panel #menu-portfolio-1 {margin:20px 0 0}
.primal-header .menu-card a {display:block;text-decoration:none;color:#000;font-weight:600;margin-bottom:15px;font-size:clamp(1.14rem, 2.5vw, 1.3rem)}
.primal-header .menu-card a:last-child {margin-bottom:0}
.primal-header .menu-title {font-weight:bold;opacity:0.5;margin-bottom:5px;color:#222222}
.primal-header .menu-buttons {display:flex;flex-direction:column;gap:clamp(2px, 2px, 1rem)}
.primal-header .menu-buttons .btn {display:block;text-align:center;padding:14px;border-radius:10px;margin-bottom:5px;text-decoration:none;font-weight:bold}
.primal-header .btn.black {background:#000;color:#fff;display:flex;justify-content:space-between;font-size:18px}
.primal-header .btn.black .icon svg {width:auto;height:35px}
.primal-header .btn.black:last-child .icon svg {margin-right:3px}
.privacy-policy .site-main {padding:100px 200px}
@media (max-width:768px) {
    .privacy-policy .site-main {padding:30px 20px}
    .work-block--gallery {width:100%}
    .work-swiper .swiper-slide img {max-height:100vh}
    .works-card__title {font-size:21px}
    .mobile-header-top {display:flex;align-items:center;gap:20px;justify-content:space-between;width:100%}
    .mobile-header-top .menu-toggle {padding:0}
    .menu-toggle {display:flex;flex-direction:column;align-items:end}
    .primal-header .menu-toggle span.red-bar {width:44px;height:4px;background:#e31e24}
    .mobile-header .menu-card ul {margin:0;padding:0;list-style:none}
    .mobile-header .menu-card ul li {margin:0;padding:0;font-size:18px}
    .mobile-header .menu-card ul li a {margin:0;padding:6px 0}
    .mobile-header .menu-card .menu-title {margin-bottom:10px;font-size:22px;font-weight:800}
}

/* ============================= */
/* WORK SWIPER GALLERY */
/* ============================= */
.work-swiper {width:100%;border-radius:12px;overflow:hidden;height:auto !important}
.work-swiper .swiper-slide {height:auto !important}
.work-swiper .swiper-wrapper {align-items:stretch}
.work-swiper .swiper-slide img {width:100%;height:auto;display:block;object-fit:cover}

.work-swiper-thumbs {margin-top:10px;height:150px !important}
.work-swiper-thumbs .swiper-wrapper {
    height: 150px !important;
    display: flex;
    align-items: stretch;
}
.work-swiper-thumbs .swiper-slide {
    height: 150px !important;
    width: 0 !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    opacity: 0.45;
    cursor: pointer;
    border-radius: 6px;
    overflow: hidden;
    transition: opacity 0.2s;
    border: 2px solid transparent;
    flex-shrink: 1;
    box-sizing: border-box;
}
.work-swiper-thumbs .swiper-slide-thumb-active {opacity:1;border-color:#E1251B}
.work-swiper-thumbs .swiper-slide img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    display: block;
}

@media (max-width:768px) {
    .work-swiper-thumbs {height:70px !important}
    .work-swiper-thumbs .swiper-wrapper {height:70px !important}
    .work-swiper-thumbs .swiper-slide {height:70px !important}
    .work-swiper-thumbs .swiper-slide img {height:70px}
}
body.works-dark .swiper-button-prev,
body.works-dark .swiper-button-next {color:#fff}
body.works-light .swiper-button-prev,
body.works-light .swiper-button-next {color:#000}
.swiper-pagination-bullet-active {background:#E1251B !important}

/* ============================= */
/* CF7 FORM */
/* ============================= */
.cf7-title {color:black;font-weight:600}
.cf7-wrapper {max-width:520px}
.cf7-step p {margin:0;width:100%}
.cf7-step {position:relative;transition:transform 0.5s ease, opacity 0.5s ease}
.step-email {position:relative}
.step-email input {width:100%;border-radius:999px;padding:14px 52px 14px 18px;border:none;background:#f1f1f2;outline:none;font-size:18px}
.cf7-wrapper input:not([type="submit"]),
.cf7-wrapper input:not([type="submit"]):focus {direction:ltr;background:#f1f1f2;border:none!important;padding:20px 110px 20px 30px!important;border-radius:50px!important;font-size:18px;outline:none!important;box-shadow:none!important}
.lets-talk-wrapper input:not([type="submit"]),.lets-talk-wrapper input:not([type="submit"]):focus {background:#f5f5f5!important}
.cf7-next {position:absolute;right:25px;top:35px;transform:translateY(-50%);width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;transition:transform 0.2s ease}
.cf7-next svg {display:block;width:50px;height:50px}
.cf7-next:hover {transform:translateY(-50%) scale(1.05)}
.step-name,
.step-status {position:absolute;top:0;left:0;width:100%;transform:translateX(100%);opacity:0}
.cf7-slider {position:relative;overflow:hidden;max-width:480px}
.cf7-slider.show-name .step-email {transform:translateX(-100%);opacity:0}
.cf7-slider.show-name .step-name {transform:translateX(0%);opacity:1}
.cf7-slider.show-status .step-name {transform:translateX(-100%);opacity:0}
.cf7-slider.show-status .step-status {transform:translateX(0%);opacity:1}
.cf7-submit {position:absolute;right:15px;top:34px;transform:translateY(-50%);background:#e1251b!important;border:none;border-radius:999px;padding:10px 18px!important;font-size:14px;font-weight:500;cursor:pointer;text-transform:uppercase;z-index:5;transition:all 0.2s ease}
.sending {opacity:0.7}
.success {display:none;color:#000}
.wpcf7-not-valid-tip {padding:10px 27px}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {border-color:transparent;color:#e1251b;margin:0;padding:10px}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {-webkit-box-shadow:0 0 0 1000px #f1f1f2 inset !important;-webkit-text-fill-color:#000 !important;box-shadow:0 0 0 1000px #f1f1f2 inset !important;transition:background-color 9999s ease-out 0s}
.wpcf7 form .wpcf7-response-output {margin:0;padding:16px 22px;border:1px solid #46b450;background:#dbe8dd;border-radius:10px;color:black}

/* ============================= */
/* MOBILE FORM PANEL             */
/* ============================= */
.mobile-form-panel {
    position:absolute;
    inset:0;
    background:#e1251b;
    z-index:10;
    display:flex;
    flex-direction:column;
    padding:0 18px 18px;
    transform:translateX(100%);
    transition:transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    overflow-y:auto}
.mobile-form-panel.active {transform:translateX(0)}
.mobile-form-back {
    display:flex;
    align-items:center;
    gap:12px;
    background:none;
    border:none;
    color:#fff;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    cursor:pointer;
    padding:20px 0 18px;
    letter-spacing:0.05em;
    flex-shrink:0}
.mobile-form-back:hover {opacity:0.8}

/* White card wrapping the Calendly iframe */
.mobile-form-body {
    background:#fff;
    border-radius:20px;
    padding:0;
    flex:1;
    overflow:hidden;
    min-height:0;
    display:flex;
    flex-direction:column}

/* Calendly iframe inside the panel */
.mobile-form-body .calendly-inline-widget {
    min-width:0 !important;
    width:100% !important;
    flex:1;
    height:calc(100dvh - 130px) !important;
    min-height:480px;
    border-radius:20px;
    overflow:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch}

/* ============================= */
/* MISC */
/* ============================= */
.gb-element-7a61ec00 {background-position:50% 40%!important;margin-top:-43px}
@media (min-width:1025px) {.gb-element-7a61ec00 {background-position:50% 40%!important}}
@media (max-width:1024px) {.gb-element-7a61ec00 {background-position:50% 40%!important;margin-top:-30px}}
@media (max-width:768px) {.gb-element-7a61ec00 {background-position:50% -23%!important;margin-top:-43px!important}}
@media (min-width:481px) and (max-width:767px) {.gb-element-7a61ec00 {background-position:50% -20%!important;margin-top:-62px!important}}
@media (max-width:480px) {.gb-element-7a61ec00 {background-position:50% 45%!important;margin-top:-43px!important}}

#featured-work {scroll-margin-top:120px}

/* ============================= */
/* WORK NAV                      */
/* ============================= */
/*.work-nav {display:flex;align-items:center;justify-content:center;gap:32px;padding:20px 48px;position:sticky;bottom:0;z-index:500;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}*/

#work-nav-placeholder {
    width: 100%;
    height: 0;
}

.work-nav {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:32px;
    padding:20px 48px;
    box-sizing:border-box;
    position: relative;
    width:100%;
    z-index:500;
    transform: translateZ(0);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.work-nav.is-floating {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
}

/* Prevent overflow:hidden on #swup from clipping position:fixed children */
#swup {
    overflow: visible !important;
}

.work-nav.is-static {
    position: relative;
}
.work-nav__arrow {opacity:0.8;transition:opacity 0.2s;display:flex;align-items:center;text-decoration:none;color:#fff;padding:16px;margin:-16px}
.work-nav__count {font-size:13px;font-weight:500;min-width:60px;text-align:center;color:rgba(255,255,255,0.45)}
@media (max-width:768px) {
    .work-nav {width:100%;box-sizing:border-box;padding:16px 24px;justify-content:space-between}
    .work-nav.is-floating {bottom:0;left:0;right:0}
    .work-page {padding-bottom:0}
    body.works-dark, body.works-light {overflow-x:hidden}
    .work-page {max-width:100vw;overflow-x:hidden;margin-top: 10px;}
    html.is-animating #swup {transition:opacity 0.3s ease}
    html.is-animating.is-leaving #swup,
    html.is-animating.is-rendering #swup {opacity:0;transform:none !important}
    .work-nav__label {font-size:13px}
    .work-nav__count {position:absolute;left:50%;transform:translateX(-50%)}
    .work-nav__arrow svg {width:22px;height:16px}
}
body.works-dark .work-nav {background:rgba(0, 0, 0, 0.85);border-top:1px solid rgba(255, 255, 255, 0.12)}
body.works-dark .work-nav__arrow {color:#fff}
body.works-dark .work-nav__count {color:rgba(255,255,255,0.45)}
body.works-light .work-nav {background:rgba(245, 245, 243, 0.92);border-top:1px solid rgba(0, 0, 0, 0.1)}
body.works-light .work-nav__arrow {color:#000}
body.works-light .work-nav__count {color:rgba(0,0,0,0.4)}
.work-nav__arrow:hover {opacity:1}
.work-nav__arrow--disabled {opacity:0.2;pointer-events:none;cursor:default}
.work-nav__label {padding:0 20px}
.work-video-poster {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;transition:opacity 0.6s ease}
.work-video-wrap iframe {position:absolute;inset:0;width:100%;height:100%;z-index:2}
.work-video-wrap.video-ready .work-video-poster {opacity:0;pointer-events:none}

/* ============================= */
/* CALENDLY INLINE WIDGET        */
/* ============================= */
.calendly-inline-widget {min-width:0 !important;width:100% !important;height:calc(100dvh - 160px) !important;min-height:500px;overflow:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

@media (max-width:768px) {
    .calendly-inline-widget {height:calc(100dvh - 168px) !important}
}

/* ============================= */
/* FOOTER BOOK CTA BUTTON        */
/* ============================= */
.footer-book-cta {display:inline-flex;align-items:center;gap:16px;background:#000;color:#fff;border:none;border-radius:20px;padding:18px 28px;font-size:18px;font-weight:700;text-transform:uppercase;cursor:pointer;letter-spacing:0.04em;transition:background 0.2s ease;text-decoration:none}
.footer-book-cta:hover {background:#222;color:#fff}
.footer-book-cta svg {flex-shrink:0}

/* ============================= */
/* FOOTER CALENDLY PANEL         */
/* ============================= */
.footer-cal-overlay {position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:1200;opacity:0;visibility:hidden;transition:opacity 0.35s ease, visibility 0.35s ease}
.footer-cal-overlay.active {opacity:1;visibility:visible}

.footer-cal-panel {position:fixed;top:0;right:-100%;width:min(680px, 100vw);height:100dvh;background:#e1251b;z-index:1201;display:flex;flex-direction:column;padding:0 18px 18px;transition:right 0.4s cubic-bezier(0.16, 1, 0.3, 1);overflow:hidden}
.footer-cal-panel.active { right:0; }

.footer-cal-header {display:flex;align-items:center;justify-content:space-between;padding:20px 0 18px;flex-shrink:0}
.footer-cal-back {display:flex;align-items:center;gap:12px;background:none;border:none;color:#fff;font-size:16px;font-weight:700;text-transform:uppercase;cursor:pointer;letter-spacing:0.05em;padding:0}
.footer-cal-back:hover { opacity:0.8; }
.footer-cal-back svg { width:26px; height:26px; fill:none; stroke:#fff; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }

.footer-cal-title {color:#fff;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;opacity:0.85}

.footer-cal-body {background:#fff;border-radius:20px;flex:1;overflow:hidden;min-height:0;display:flex;flex-direction:column}
.footer-cal-body .calendly-inline-widget {min-width:0 !important;width:100% !important;flex:1;height:100% !important;min-height:480px;border-radius:20px;overflow:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

/* Desktop:wider panel */
@media (min-width:769px) {
    .footer-cal-panel {width:min(760px, 90vw);padding:0 28px 28px}
    .footer-cal-back {font-size:18px}
}

/* ============================= */
/* MOBILE MENU                  */
/* ============================= */

.primal-header .menu-card:first-child {max-height:20dvh !important;padding-top:10px !important;padding-bottom:10px !important}
.primal-header .menu-card:first-child ul li a {padding:4px 0 !important;margin-bottom:0 !important;font-size:clamp(0.95rem, 1.2dvh + 0.5rem, 1.25rem) !important;line-height:1.3 !important}

/* Portfolio card */
.primal-header .menu-inner {gap:8px !important}
#menu-portfolio-1 .menu-item a {padding:3px 0 !important;margin-bottom:0 !important;font-size:clamp(0.95rem, 1.2dvh + 0.5rem, 1.25rem) !important;line-height:1.35 !important}

.primal-header .menu-title {margin-bottom:4px !important;font-size:13px !important}

/* ============================= */
/* WORK LOGOS / PARTNERS STRIP   */
/* ============================= */

.work-logos-wrap {margin-top:28px;border-top:1px solid var(--border);padding-top:20px}
/* invert */
body.works-dark  .work-logo-img { filter:invert(0)}
body.works-light .work-logo-img { filter:invert(0.96)}

/* GRID */
.work-logos-track {display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0;align-items:center}

@media (min-width:769px) {
    .work-logos-track.work-logos-track--3cols {grid-template-columns:repeat(3, minmax(0, 1fr))}
}

@media (max-width:768px) {
    .work-logos-track {grid-template-columns:repeat(2, minmax(0, 1fr))}
}
.work-logo-item {display:flex;align-items:center;justify-content:center;min-width:0}
.work-logo-img {width:100%;max-width:300px;height:120px;object-fit:contain;display:block;opacity:0.60;transition:opacity 0.2s ease}
.work-logo-img:hover {opacity:1}
.entry-header > .entry-title {font-weight:700!important}
html,
body {
    overflow-x:hidden;
}
.site-info {
    color: black!important;text-align:left;
}
.inside-footer-widgets {
    display: grid!important;
    grid-template-columns: 35% 1fr 1fr 1fr!important;
    gap: clamp(20px, 3vw, 40px);
}
.inside-site-info {
    justify-content: flex-end!important;
    padding: 20px 40px;
    flex-direction: row-reverse;
}
.footer-bar a {margin: 0 20px; color:gray; text-decoration:none}
.footer-bar a:hover {text-decoration:underline}
.footer-widgets .widget {
    margin-bottom: 8px!important;
}
@media (max-width: 1280px) {
    .inside-footer-widgets {
        grid-template-columns: 31% 1fr 1fr 1fr !important
    }
}
@media (max-width: 1024px) {
    .inside-footer-widgets {
        display: grid !important;
        grid-template-columns: 48% 1fr!important;
        grid-template-rows: auto;
        column-gap: 90px;
        row-gap: 10px;
    }
    .footer-widget-2 p {margin-top:30px}
    .footer-widget-1 {
        grid-column: 1 / 2;
    }

    .footer-widget-2,
    .footer-widget-3,
    .footer-widget-4 {
        grid-column: 2 / 3;
    }
    .footer-widgets-container{padding: 80px 50px 50px!important}
}
@media (max-width: 450px) {
    .footer-book-cta {
        width: 100%;
    }
    @media (max-width: 768px) {
        .inside-footer-widgets {
            grid-template-columns: 1fr !important;
        }

        .footer-widget-1,
        .footer-widget-2,
        .footer-widget-3,
        .footer-widget-4 {
            grid-column: auto !important;
        }
        .footer-widget-2 {margin-top:30px}

        .footer-widget-2,
        .footer-widget-3,
        .footer-widget-4 {
            margin-left:10px
        }
        .footer-widgets-container {
            padding: 54px 25px 50px  !important;
        }
        .inside-site-info {
            padding: 20px 0 20px 38px !important;
        }
    }
    @media (min-width: 1024px) {
        .partners-title {margin-top: -52px!important;}
    }
    /* ============================================================
       FADE-IN CASCADE — single-works
       ============================================================ */
    .work-header,
    .work-main,
    .work-blocks {
        opacity: 1;
        transition: opacity 0.6s ease;
    }

    .is-animating .work-header,
    .is-animating .work-main,
    .is-animating .work-blocks {
        opacity: 0;
        transition: none;
    }

    .work-header  { transition-delay: 0s; }
    .work-main    { transition-delay: 0.2s; }
    .work-blocks  { transition-delay: 0.4s; }

