
.df-page-transition{position:fixed;inset:0;z-index:99999;pointer-events:none;visibility:hidden}
.df-page-transition__panel{position:absolute;inset:0;display:grid;place-items:center;background:#05070a;opacity:0;transition:opacity .42s ease}
.df-page-transition__brand{width:min(420px,72vw);text-align:center;opacity:0;transform:translateY(8px);transition:.35s ease}
.df-page-transition__brand span{display:block;color:#f2efe8;font:500 13px Georgia,serif;letter-spacing:.3em}
.df-page-transition__brand i{display:block;height:1px;margin:15px 0 10px;background:linear-gradient(90deg,transparent,#d8b675,transparent);transform:scaleX(.15);transition:transform .48s ease}
.df-page-transition__brand small{color:#7f8995;font-size:9px;letter-spacing:.18em}
html.df-leaving .df-page-transition,html.df-arriving .df-page-transition{visibility:visible}
html.df-leaving .df-page-transition__panel,html.df-arriving .df-page-transition__panel{opacity:1}
html.df-leaving .df-page-transition__brand,html.df-arriving .df-page-transition__brand{opacity:1;transform:none}
html.df-leaving .df-page-transition__brand i,html.df-arriving .df-page-transition__brand i{transform:scaleX(1)}
html.df-arriving.df-arriving-ready .df-page-transition__panel{opacity:0;transition-duration:.65s}
html.df-arriving.df-arriving-ready .df-page-transition__brand{opacity:0;transform:translateY(-8px)}

/* CAST — refined hover */
.cast-card{will-change:transform;transition:transform .5s cubic-bezier(.2,.75,.25,1),border-color .4s ease,box-shadow .5s ease}
.cast-card img{filter:saturate(.95) brightness(.98);transition:transform .7s cubic-bezier(.18,.8,.2,1),filter .5s ease}
.cast-card>span{transition:transform .5s cubic-bezier(.18,.8,.2,1)}
.cast-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--cast-accent) 52%,rgba(255,255,255,.16));box-shadow:0 24px 54px rgba(0,0,0,.4),0 0 38px color-mix(in srgb,var(--cast-accent) 10%,transparent)}
.cast-card:hover img{transform:scale(1.04);filter:saturate(1.04) brightness(1.02)}
.cast-card:hover>span{transform:translateY(-3px)}
.cast-card:after{content:"VIEW PROFILE ↗";inset:14px 14px auto auto;width:auto;height:auto;padding:7px 9px;display:block;background:rgba(5,7,10,.68);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);border-radius:999px;color:#f5f2ea;font:7px Georgia,serif;letter-spacing:.14em;opacity:0;transform:translateY(7px);transition:opacity .3s ease,transform .4s ease}
.cast-card:hover:after{opacity:.92;transform:none}

/* OFFICIAL FOOTER */
.df-footer{position:relative;padding:0!important;border-top:1px solid rgba(255,255,255,.08)!important;background:radial-gradient(circle at 82% 15%,rgba(91,75,163,.08),transparent 24rem),linear-gradient(180deg,#06080c,#040609)!important}
.df-footer:before{content:"";position:absolute;left:0;top:-1px;width:30%;height:1px;background:linear-gradient(90deg,#d8b675,transparent);opacity:.65}
.df-footer-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.df-footer-main{display:grid;grid-template-columns:minmax(280px,1.35fr) .8fr .9fr 1.1fr;gap:55px;padding:58px 0 48px}
.df-footer-brand{display:flex;align-items:flex-start;gap:16px}
.df-footer-brand img{width:54px!important;height:54px!important;object-fit:contain;filter:drop-shadow(0 10px 25px rgba(0,0,0,.45))}
.df-footer-brand-copy{display:flex;flex-direction:column}
.df-footer-brand-copy strong{color:#f3f0e9;font:500 19px/1.15 Georgia,serif;letter-spacing:.025em}
.df-footer-brand-copy small{margin-top:7px;color:#7e8996;font-size:8px;letter-spacing:.16em}
.df-footer-brand-copy em{margin-top:20px;color:#c1aa77;font:italic 12px Georgia,serif;letter-spacing:.035em}
.df-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.df-footer-column>span{margin-bottom:7px;color:#697480;font:8px Georgia,serif;letter-spacing:.22em}
.df-footer-column a{color:#bbc2ca!important;font-size:10px!important;letter-spacing:.075em;transition:color .25s ease,transform .25s ease}
.df-footer-column a:hover{color:#f3d89b!important;transform:translateX(3px)}
.df-footer-mail{word-break:break-all;color:#dbc187!important}
.df-footer-bottom{min-height:58px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;border-top:1px solid rgba(255,255,255,.07);color:#626d78;font:8px Georgia,serif;letter-spacing:.14em}
.df-footer-bottom span:nth-child(2){color:#8a754f;text-align:center}.df-footer-bottom span:last-child{text-align:right}
@media(max-width:900px){.df-footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:38px}.df-footer-main .df-footer-column:last-child{grid-column:2/4}}
@media(max-width:620px){.df-footer-shell{width:calc(100% - 30px)}.df-footer-main{grid-template-columns:1fr 1fr;gap:34px 26px;padding:44px 0 36px}.df-footer-brand{grid-column:1/-1}.df-footer-main .df-footer-column:last-child{grid-column:1/-1}.df-footer-bottom{grid-template-columns:1fr;padding:19px 0;gap:9px}.df-footer-bottom span:nth-child(2),.df-footer-bottom span:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){.df-page-transition__panel,.df-page-transition__brand,.df-page-transition__brand i,.cast-card,.cast-card img{transition:none!important}}
