/* brand.css - Andechser am Rhein Configuration */

/* 1. TYPOGRAPHY IMPORT  */
/* lato-300 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/lato-v25-latin_latin-ext-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-300italic - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('assets/fonts/lato-v25-latin_latin-ext-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/lato-v25-latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-italic - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/lato-v25-latin_latin-ext-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-700 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/lato-v25-latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* oswald-300 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/oswald-v57-latin_latin-ext-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* oswald-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/oswald-v57-latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* oswald-500 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: url('assets/fonts/oswald-v57-latin_latin-ext-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* oswald-600 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/oswald-v57-latin_latin-ext-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* playfair-display-italic - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/playfair-display-v40-latin_latin-ext-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root {
    /* --- COLOR PALETTE (Andechser Identity) - UNCHANGED --- */
    
    /* Headlines, Highlights, Buttons, Active States */
    --store-primary: #AE8844;       /* AAR Gold */
    
    /* Sub-headlines, Secondary Buttons */
    --store-secondary: #56593b;     /* AAR Green */
    
    /* Main Body Text */
    --store-text: #31331e;          /* AAR Dark Green */
    
    /* Text on Dark Backgrounds */
    --store-text-contrast: #ffffff; 
    
    /* Section Backgrounds: DARK */
    --store-bg-dark: #31331e;       /* AAR Dark Green */
    
    /* Section Backgrounds: LIGHT */
    --store-bg-light: #F5F0DB;      /* AAR Cream */
    
    /* Section Backgrounds: CONTRAST (Footer) */
    --store-bg-contrast: #1a1b10;   /* Almost Black */

    /* --- TYPOGRAPHY SETTINGS (UPDATED) --- */
    
    /* HEADINGS: Oswald (Industrial, Vertical) */
    --font-heading: 'Oswald', sans-serif;
    
    /* BODY: Lato (Warm, Upholstered, Modern) */
    --font-body: 'Lato', sans-serif;

    /* ACCENTS: Playfair Display (Monastic Heritage) */
    --font-accent: 'Playfair Display', serif;
    
    /* Weights tuned for these specific fonts */
    --weight-heading: 500; /* Oswald is bold by nature, 500 is elegant */
    --weight-body: 400;    /* Lato Regular for best readability */
}

/* --- GLOBAL OVERRIDES --- */

body {
    font-family: var(--font-body);
    font-weight: var(--weight-body);
    color: var(--store-text);
    background-color: var(--store-bg-light);
    line-height: 1.6; /* Increased slightly for Lato's "comfort" feel */
}

h1, h2, h3, h4, h5 {
    font-family: var(--font-heading);
    font-weight: var(--weight-heading);
    text-transform: uppercase;
    /* Oswald benefits from positive spacing, unlike Roboto */
    letter-spacing: 0.05em; 
}

/* Tweak H1 to be extra architectural */
h1 {
    letter-spacing: 0.1em;
}

/* Helper: English Translation Text styling */
/* Uses Playfair Italic for that "Monastery Note" feel */
.lang-en {
    font-family: var(--font-accent);
    font-weight: 400;
    font-style: italic;
    display: block;
    margin-top: 0.25rem;
    color: var(--store-secondary); 
    font-size: 0.95em; /* Serif often needs to be a tiny bit larger */
}

/* Helper: When English text is on a Dark Background */
.dark-mode .lang-en {
    color: var(--store-primary);
}

/* --- ANIMATIONS (Scroll Reveal) --- */

.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease-out;
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* --- BUTTONS --- */

/* Primary Button (Solid Gold) */
.btn-primary {
    font-family: var(--font-heading); /* Use Oswald for structure */
    background-color: var(--store-primary);
    color: #FFF;
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    transition: all 0.3s;
    border: 1px solid var(--store-primary);
    border-radius: 2px;
    cursor: pointer;
    display: inline-block;
}

.btn-primary:hover {
    background-color: var(--store-secondary); /* Hover turns Green */
    border-color: var(--store-secondary);
    color: white;
}

/* Secondary Button (Outline Green) */
.btn-secondary {
    font-family: var(--font-heading);
    background-color: transparent;
    border: 1px solid var(--store-secondary);
    color: var(--store-secondary);
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    display: inline-block;
    transition: all 0.3s;
    border-radius: 2px;
}

.btn-secondary:hover {
    background-color: var(--store-secondary);
    color: white;
}

/* Inverse Button (Outline Gold - for dark backgrounds) */
.btn-primary-inverse {
    font-family: var(--font-heading);
    background-color: transparent;
    border: 1px solid var(--store-primary);
    color: var(--store-primary);
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    display: inline-block;
    transition: all 0.3s;
    border-radius: 2px;
}

.btn-primary-inverse:hover {
    background-color: var(--store-primary);
    color: var(--store-bg-dark);
}

/* --- UTILITY CLASSES FOR HTML --- */
/* These map the variables to Tailwind-like class names used in your HTML */

.bg-brand-dark {
    background-color: var(--store-bg-dark);
    color: var(--store-text-contrast);
}

.bg-brand-contrast {
    background-color: var(--store-bg-contrast);
    color: var(--store-text-contrast);
}

.text-brand-primary {
    color: var(--store-primary);
}

.section-spacer {
    padding: 5rem 0;
}


/* Ensure container background matches to prevent white flashes */
#map {
    background-color: var(--store-bg-dark);
}

/* 2. THE PIN:  */
/* We use sepia to neutralize the blue, then saturate/rotate to hit gold */
.leaflet-marker-icon {
    filter: sepia(100%) saturate(300%) brightness(0.8) hue-rotate(15deg);
}

/* 3. THE POPUP: Card Style */
/* Removes the rounded bubble look and applies brand fonts/colors */
.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    background: var(--store-bg-light);      
    color: var(--store-text);                
    border: 1px solid var(--store-primary); 
    border-radius: 2px;                      
    box-shadow: 0 4px 20px rgba(0,0,0,0.5);  
    font-family: var(--font-body);           
    padding: 2px;
}

/* Style the Store bold text inside the popup */
.leaflet-popup-content b {
    font-family: var(--font-display);       
    color: var(--store-secondary);          
    text-transform: uppercase;
    font-size: 1.1em;
    display: block;
    margin-bottom: 0.25rem;
    border-bottom: 2px solid var(--store-primary); /* Gold underline */
    padding-bottom: 4px;
}