/* ========================================
   Template : Trattoria Italiana
   Terracotta/olive, Roboto Slab, pointillés
   ======================================== */

.menu-template.trattoria-italiana {
    --t-primary: var(--custom-primary, #8b4513);
    --t-secondary: var(--custom-secondary, #6b8e23);
    --t-bg: var(--custom-bg, #fefcf3);
    --t-text: var(--custom-text, #3e3028);
    --t-heading-font: var(--custom-heading-font, 'Roboto Slab', serif);
    --t-body-font: var(--custom-body-font, 'Lato', sans-serif);

    background: var(--t-bg);
    padding: 50px 45px;
    position: relative;
    box-shadow:
        inset 0 0 80px rgba(139, 69, 19, 0.04),
        0 2px 20px rgba(139, 69, 19, 0.08);
}

/* Warm Tuscan terracotta texture */
.trattoria-italiana .menu-texture-overlay {
    background:
        radial-gradient(ellipse at 30% 20%, rgba(139, 69, 19, 0.06) 0%, transparent 50%),
        radial-gradient(ellipse at 70% 70%, rgba(107, 142, 35, 0.04) 0%, transparent 45%),
        radial-gradient(ellipse at 50% 50%, rgba(139, 69, 19, 0.03) 0%, transparent 70%),
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 3px,
            rgba(139, 69, 19, 0.008) 3px,
            rgba(139, 69, 19, 0.008) 6px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 5px,
            rgba(107, 142, 35, 0.006) 5px,
            rgba(107, 142, 35, 0.006) 10px
        );
}

/* Olive green accent border */
.trattoria-italiana::before {
    content: '';
    position: absolute;
    inset: 10px;
    border: 1px solid rgba(107, 142, 35, 0.15);
    pointer-events: none;
    z-index: 0;
}

/* Header */
.trattoria-italiana .menu-header {
    text-align: center;
    margin-bottom: 16px;
    padding-bottom: 24px;
}

/* Italian flag line - taller and more prominent */
.trattoria-italiana .menu-flag-line {
    height: 6px;
    background: linear-gradient(to right, #009246 33%, #ffffff 33%, #ffffff 66%, #ce2b37 66%);
    margin-bottom: 28px;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.trattoria-italiana .menu-restaurant-logo {
    margin: 0 auto 14px;
}

.trattoria-italiana .menu-restaurant-name {
    font-family: var(--t-heading-font);
    font-size: 2.4em;
    font-weight: 700;
    color: var(--t-primary);
    margin-bottom: 8px;
    text-shadow: 0 1px 2px rgba(139, 69, 19, 0.08);
}

.trattoria-italiana .menu-restaurant-subtitle {
    font-size: 0.98em;
    color: var(--t-secondary);
    font-style: italic;
    letter-spacing: 0.03em;
}

/* Categories */
.trattoria-italiana .menu-category {
    margin-bottom: 36px;
}

.trattoria-italiana .menu-category-name {
    font-family: var(--t-heading-font);
    font-size: 1.25em;
    font-weight: 700;
    color: var(--t-primary);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
    text-align: center;
}

.trattoria-italiana .menu-category-desc {
    text-align: center;
    font-size: 0.84em;
    font-style: italic;
    color: var(--t-text);
    opacity: 0.6;
    margin-bottom: 16px;
}

.trattoria-italiana .menu-category-separator {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 0 auto 20px;
}

.trattoria-italiana .menu-category-separator::before,
.trattoria-italiana .menu-category-separator::after {
    content: '';
    width: 45px;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        var(--t-secondary) 30%,
        var(--t-secondary) 70%,
        transparent 100%
    );
    opacity: 0.4;
}

/* Items with more padding */
.trattoria-italiana .menu-item {
    margin-bottom: 14px;
    padding: 8px 6px;
    border-radius: 2px;
    transition: background 0.2s ease;
}

.trattoria-italiana .menu-item-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.trattoria-italiana .menu-item-name {
    font-size: 0.97em;
    font-weight: 600;
    color: var(--t-text);
}

.trattoria-italiana .menu-item-dots {
    flex: 1;
    margin: 0 10px;
    border-bottom: 2px dotted var(--t-secondary);
    opacity: 0.3;
    margin-bottom: 4px;
}

.trattoria-italiana .menu-item-price {
    font-family: var(--t-heading-font);
    font-weight: 700;
    color: var(--t-primary);
    font-size: 0.95em;
}

.trattoria-italiana .menu-item-description {
    margin-top: 4px;
    font-size: 0.82em;
    padding-left: 0;
    opacity: 0.6;
}

/* Footer */
.trattoria-italiana .menu-footer {
    margin-top: 40px;
    text-align: center;
    padding-top: 6px;
}

.trattoria-italiana .menu-footer .menu-flag-line {
    margin-top: 18px;
    margin-bottom: 0;
}

.trattoria-italiana .menu-restaurant-info {
    font-size: 0.82em;
    opacity: 0.55;
}

.trattoria-italiana .menu-restaurant-info p {
    margin: 3px 0;
}
