/* WordPress integration and accessibility; original design is in site.css. */
body.t25-canvas { margin:0; background:#0a0a0a; }
.t25 { font-family:Inter,system-ui,sans-serif; font-size:16px; line-height:1.5; color:#fafafa; }
.t25, .t25 * { box-sizing:border-box; }
.t25-shell { min-height:100vh; }
.t25 .elementor-section.elementor-section-boxed > .elementor-container { max-width:none; }
.t25 .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
.t25 .elementor-column-gap-no > .elementor-column > .elementor-element-populated { padding:0; }
.t25 .elementor-widget:not(:last-child) { margin-bottom:0; }
.t25 .elementor-widget-wrap { padding:0; }
.t25-section { width:100%; }
.t25 h1,.t25 h2,.t25 h3,.t25 h4 { font-family:Archivo,Inter,sans-serif; color:inherit; }
.t25 p { margin-top:0; }
.t25 a { text-decoration:none; }
.t25 a:focus-visible,.t25 button:focus-visible,.t25 input:focus-visible,.t25 textarea:focus-visible { outline:2px solid hsl(79 65% 53%); outline-offset:5px; }
.t25 button,.t25 input,.t25 textarea { font-family:inherit; }
.t25 input:not([type=submit]),.t25 textarea { border-radius:0; box-shadow:none; padding-left:0; padding-right:0; background:transparent; border-width:0 0 1px; }
.t25 button { cursor:pointer; }
.t25 button:disabled { opacity:.55; cursor:wait; }
.t25 img { max-width:100%; }
.t25 .t25-brand-crop { aspect-ratio:704/370; overflow:hidden; width:100%; mix-blend-mode:screen; }
.t25 .t25-brand-image { position:absolute; width:272.7273%; max-width:none; height:auto; left:-86.3636%; top:-172.1622%; }
.t25 header { width:100%; }
.t25 header.t25-scrolled,.t25 header.t25-menu-open { background:rgba(10,10,10,.9); backdrop-filter:blur(12px); border-bottom:1px solid #242424; }
.t25 header nav a[aria-current=page] { color:#fafafa; }
.t25 .t25-mobile-menu { display:none; max-height:calc(100dvh - 64px); overflow:auto; }
.t25 .t25-skip { position:fixed; top:-100px; left:16px; z-index:99999; background:#b4d639; color:#0a0a0a; padding:12px 20px; }
.t25 .t25-skip:focus { top:12px; }
.t25 .t25-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.t25 .t25-form-status { min-height:1.5em; color:#b4d639; }
.t25 .t25-form-status[data-error] { color:#ffb0a4; }
.t25 .animate-marquee { width:max-content; }
.t25 .animate-marquee:hover { animation-play-state:paused; }
.t25 .t25-project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.t25 .t25-project-card { border:1px solid #242424; border-radius:4px; background:#121212; overflow:hidden; transition:border-color .2s; }
.t25 .t25-project-card:hover { border-color:#b4d639; }
.t25 .t25-project-card > img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.t25 .t25-project-card-body { padding:28px; }
.t25 .t25-project-cover img { width:100%; max-height:720px; object-fit:cover; border-radius:4px; }
.t25 .t25-project-content { font-size:18px; line-height:1.8; }
.t25 .t25-project-content p { margin:0 0 1.5em; }
.t25 .t25-project-content h2 { font-size:36px; margin:1.5em 0 .6em; }
.t25 .t25-project-content h3 { font-size:28px; margin:1.3em 0 .6em; }
.t25 .t25-project-content a { color:#b4d639; text-decoration:underline; }
.t25 .t25-project-content ul { list-style:disc; padding-left:1.5em; margin-bottom:1.5em; }
.t25 .t25-project-content ol { list-style:decimal; padding-left:1.5em; margin-bottom:1.5em; }
.t25 .t25-project-content blockquote { border-left:3px solid #b4d639; padding-left:24px; }
.t25 .t25-pagination { display:flex; flex-wrap:wrap; gap:12px; margin-top:40px; }
.t25 .t25-pagination a,.t25 .t25-pagination span { padding:8px 14px; border:1px solid #242424; }
.t25 .t25-pagination .current { color:#b4d639; border-color:currentColor; }
.admin-bar .t25 header { top:32px; }
.elementor-editor-active .t25 .animate-fade-up { animation:none; opacity:1; }
.elementor-editor-active .t25 header { pointer-events:none; }
@media (max-width:1023px) { .t25 .t25-project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:782px) { .admin-bar .t25 header { top:46px; } }
@media (max-width:767px) {
 .t25 header.t25-menu-open .t25-mobile-menu { display:block; }
 .t25 .t25-project-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) { body.admin-bar #wpadminbar { position:fixed; } }
@media (prefers-reduced-motion:reduce) {
 .t25 *, .t25 *::before, .t25 *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
 .t25 .animate-marquee { flex-wrap:wrap; white-space:normal; width:100%; }
 .t25 .animate-marquee > div { flex-wrap:wrap; justify-content:center; padding:0 24px; }
 .t25 .animate-marquee > div + div { display:none; }
}
