html { scroll-behavior: smooth; }

body {
    font-family: 'DM Sans', system-ui, sans-serif;
    background: #FFF8F1;
    color: #2D2017;
    overflow-x: hidden;
}

.font-display { font-family: 'Fraunces', serif; font-optical-sizing: auto; }
.font-hand    { font-family: 'Caveat', cursive; }

/* Wavy underline used under "Irene" in the hero h1 */
.squiggle {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12'><path d='M2 6 Q 17 0 32 6 T 62 6 T 92 6 T 122 6' fill='none' stroke='%23F2876A' stroke-width='3' stroke-linecap='round'/></svg>");
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: 100% 0.5em;
    padding-bottom: 0.25em;
}

/* Letter-by-letter pop-in for hero */
@keyframes pop {
    0%   { transform: translateY(30px); opacity: 0; }
    60%  { transform: translateY(-4px); opacity: 1; }
    100% { transform: translateY(0);    opacity: 1; }
}
.pop-letter {
    display: inline-block;
    opacity: 0;
    animation: pop 0.55s cubic-bezier(.34, 1.4, .64, 1) forwards;
}

/* Scroll-in reveals */
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .7s cubic-bezier(.2, .7, .2, 1), transform .7s cubic-bezier(.2, .7, .2, 1);
}
.reveal.in { opacity: 1; transform: none; }

/* Venture cards hover-lift */
.branch-card { transition: transform .3s ease, box-shadow .3s ease; }
.branch-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 25px 45px -20px rgba(45, 32, 23, 0.25);
}

/* Marquee container (kept for future use) */
.marquee-track { width: max-content; }

/* Cream ring around the small branch dots */
.dot-ring { box-shadow: 0 0 0 3px #FFF8F1; }

/* Honor users who prefer less motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation: none !important;
        transition: none !important;
    }
}
