/*
Theme Name: Dugasta
Theme URI: http://example.com/
Author: GMI
Author URI: http://example.com/
Description: A custom WordPress theme.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dugasta
*/

/* --------- WordPress Core ----------------------------------------- */

.wpcf7 form.invalid .wpcf7-response-output{
    display:none !important;
}

/* .news-loader {
    width: 50px;
    aspect-ratio: 1;
    display: grid !important;
    text-align: center;
    margin: 0 auto;
}
.news-loader::before,
.news-loader::after {
    content: "";
    grid-area: 1 / 1;

    --c: no-repeat radial-gradient(
        farthest-side,
        #6E2813 92%,
        transparent 100%
    );

    background:
        var(--c) 50% 0,
        var(--c) 50% 100%,
        var(--c) 100% 50%,
        var(--c) 0 50%;

    background-size: 12px 12px;

    animation: l12 1s infinite;

    
    background-color: transparent;
}

.news-loader {
    background: linear-gradient(
        90deg,
        #FFB89E 0%,
        #6E2813 100%
    );
}
.news-loader::before {
  margin: 4px;
  filter: hue-rotate(45deg);
  background-size: 8px 8px;
  animation-timing-function: linear
}

@keyframes l12 { 
  100%{transform: rotate(.5turn)}
} */

/* ── Skeleton shimmer ─────────────────────────────────── */
@keyframes shimmer {
    0%   { background-position: -700px 0; }
    100% { background-position:  700px 0; }
} 
body {
    overflow-anchor: none; /* disable browser's own scroll anchoring — we handle it manually */
}

#scroll-sentinel {
    height: 100px; /* give it real height so there's always scroll room below last card */
    display: block;
}
.project-skeleton {
    border-radius: 8px;
    overflow: hidden;
}

.skel {
    border-radius: 6px;
    background: linear-gradient(90deg, #e8e8e8 25%, #f5f5f5 50%, #e8e8e8 75%);
    background-size: 700px 100%;
    animation: shimmer 1.4s infinite linear;
    display: block;
}

.skel-img  { height: 200px; width: 100%; }
.skel-line { height: 14px; }
.w-75      { width: 75%; }
.w-50      { width: 50%; }

/* ── Card entrance animation ─────────────────────────── */
@keyframes cardIn {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
}

.project-card-animate {
    opacity: 0;
    animation: cardIn 0.45s ease forwards;
}
