@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,600;9..144,700;9..144,900&family=Public+Sans:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');

:root {
  --accent:#B85338;          /* oxide red - accent only, used sparingly */
  --accent-dark:#954230;
  --limewash:#FAF7F0;        /* soft warm white background */
  --plaster-dark:#EFE4CC;
  --surface:#FFFFFF;         /* navbar / footer surface - light, modern */
  --ink:#26221d;             /* neutral near-black text (less brown-heavy) */
  --ink-soft:#5c554c;
  --moss:#74815A;
  --wheat:#D6B26E;
  --cream-card:#FFFFFF;
  --border-soft:#E7E0D2;
  --font-display:'Fraunces', serif;
  --font-body:'Public Sans', sans-serif;
  --font-mono:'Space Mono', monospace;
}

* { box-sizing: border-box; }
html, body { height:100%; }
html{ scroll-behavior:smooth; background:var(--limewash); overscroll-behavior-y: none; }
body{
  margin:0; padding:0; background:var(--limewash); color:var(--ink);
  font-family:var(--font-body); display:flex; flex-direction:column; overflow-x:hidden;
}
main{ flex:1 0 auto; padding-top:72px; }
footer{ margin-top:auto; }

h1,h2,h3,.display-5,.display-6{ font-family:var(--font-display); font-weight:700; }

/* ====== NAVBAR – light & modern ====== */
.navbar.fixed-top{ top:0; margin:0; padding:0; }
.navbar.bg-surface{
  background:rgba(255,255,255,.96) !important;
  backdrop-filter:blur(6px);
  box-shadow:0 1px 0 var(--border-soft);
}
.navbar-brand span{ font-family:var(--font-display); font-weight:700; color:var(--ink); letter-spacing:.01em; }
.brand-logo img{ width:40px;height:40px;border-radius:50%; display:block; }
.navbar-light .navbar-nav .nav-link{ color:var(--ink-soft); font-weight:500; position:relative; padding:.5rem .9rem; }
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active{ color:var(--ink); }
.navbar-light .navbar-nav .nav-link.active::after{
  content:""; position:absolute; left:14px; right:14px; bottom:6px; height:2px; background:var(--accent); border-radius:2px;
}
.navbar-toggler{ border-color:var(--border-soft); }

.text-ink{ color:var(--ink) !important; }
.link-ink{ color:var(--ink) !important; text-decoration:underline; }
.link-ink:hover{ color:var(--accent) !important; }

/* Home header sits under the navbar seamlessly (no white sliver) */
body.bg-home main{ padding-top:0; }
.hero{ margin-top:72px; }

/* ====== BUTTONS ====== */
.btn-dark{ background:var(--accent); border-color:var(--accent); font-weight:600; }
.btn-dark:hover{ background:var(--accent-dark); border-color:var(--accent-dark); }
.btn-outline-dark{ color:var(--ink); border-color:var(--ink); font-weight:600; }
.btn-outline-dark:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }
.btn-light{ background:#fff; border-color:#fff; color:var(--ink); font-weight:600; }

/* ====== HERO ====== */
.hero{
  background:url('slike/S037_Naces_house.jpg') center/cover no-repeat;
  min-height:60vh; position:relative;
}
.hero .overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(38,34,29,.25), rgba(38,34,29,.6)); }
.hero-card{ background:rgba(38,34,29,.6); backdrop-filter:blur(3px); padding:28px 32px; border-radius:12px; border-left:4px solid var(--accent); }
.hero-card h1{ color:#fff; }
.hero-card p{ color:#EDE7DA; }

/* ====== PAGES "PAPER WRAP" ====== */
.page-wrap{
  background:#fff;
  border-radius:12px;
  padding:28px;
  box-shadow:0 1px 3px rgba(38,34,29,.06);
}

/* ====== BACKGROUNDS PER PAGE ====== */
body.bg-home{ background:var(--limewash); }
body.bg-location{ background:var(--limewash); }
body.bg-contact{  background:var(--limewash); }
body.bg-pricing{  background:var(--limewash); }

/* ====== GALLERY ====== */
.gallery-bg{ background:var(--plaster-dark); }
.gallery-bg h2, .gallery-bg p{ color:var(--ink) !important; }
.gallery img{ cursor:pointer; border-radius:8px; transition:transform .2s ease, box-shadow .2s ease; }
.gallery img:hover{ transform:translateY(-3px); box-shadow:0 8px 20px rgba(38,34,29,.15); }

/* ====== LIGHTBOX ====== */
.lightbox-modal .modal-content{ background:transparent; border:0; position:relative; }
.lightbox-img{ width:100%; max-height:85vh; object-fit:contain; border-radius:8px; }
.lightbox-close{ position:absolute; top:-42px; right:0; z-index:5; }
.lightbox-nav{
  position:absolute; top:50%; transform:translateY(-50%); z-index:5;
  background:rgba(255,255,255,.85); border:0; width:48px; height:48px; border-radius:50%;
  font-size:1.3rem; color:var(--ink); cursor:pointer;
}
.lightbox-nav:hover{ background:#fff; }
.lightbox-prev{ left:-16px; }
.lightbox-next{ right:-16px; }
@media (max-width:768px){ .lightbox-prev{ left:6px; } .lightbox-next{ right:6px; } }

/* ====== MAPS IFRAME ====== */
.map-frame{ width:100%; height:420px; border:0; border-radius:12px; }
@media (max-width:992px){ .map-frame{ height:340px; } }

/* ====== COOKIE BANNER ====== */
.cookie-banner{
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  background:#fff; border-top:1px solid var(--border-soft); box-shadow:0 -4px 18px rgba(0,0,0,.08);
  padding:12px 16px; font-size:.92rem;
}

/* ====== HISTORY: sticky sub-nav + bilingual toggle ====== */
#history nav.history-subnav{
  position:sticky; top:72px; z-index:20;
  background:rgba(250,247,240,.95); backdrop-filter:blur(4px);
  padding:12px 4px; margin-bottom:24px !important;
  border-bottom:1px solid var(--border-soft);
}
#history nav.history-subnav a{
  text-decoration:none; color:var(--ink-soft); font-weight:600;
  font-family:var(--font-mono); font-size:.82rem;
}
#history nav.history-subnav a:hover{ color:var(--accent); }
#history h3{ color:var(--ink); border-left:3px solid var(--accent); padding-left:12px; }

.i18n-en{ display:none; }
html[lang="en"] .i18n-sl{ display:none; }
html[lang="en"] .i18n-en{ display:revert; }

.stitch-divider{
  height:16px; margin:8px 0 32px;
  background-image: repeating-linear-gradient(115deg, var(--accent) 0 6px, transparent 6px 12px),
                     repeating-linear-gradient(65deg, var(--moss) 0 6px, transparent 6px 12px);
  background-size:22px 16px; background-position:0 0, 11px 0; background-repeat:repeat-x;
  background-color:var(--plaster-dark); border-radius:2px;
}

/* ====== CONTACT ====== */
.contact-card{
  background:#fff; color:var(--ink);
  border:1px solid var(--border-soft);
  border-left:4px solid var(--accent);
}
.contact-card h5{ color:var(--ink); }

/* ====== SUBHERO (pricing/location mini header) ====== */
.subhero{
  background:linear-gradient(180deg, rgba(38,34,29,.45), rgba(38,34,29,.65)), url('slike/P1070446.JPG') center/cover no-repeat;
  min-height:180px; margin-top:72px;
}
.subhero h1{ color:#fff; }
.subhero .lead{ color:#EDE7DA; }

/* ====== PRICING ====== */
.price-card{ border:1px solid var(--border-soft); border-radius:12px; overflow:hidden; }
.price-card.bg-white{ background:#fff !important; }
.price-card.bg-dark{ background:var(--ink) !important; border-color:var(--ink); }
.price-card .display-5{ font-family:var(--font-mono); color:var(--accent); }
.price-card.featured .display-5{ color:var(--wheat); }
.price-card .list-group-item{ border:0; border-bottom:1px dashed var(--border-soft); }

/* ====== MISC ====== */
.card, .rounded-3{ border-radius:12px; }
section, main { scroll-margin-top: 90px; }
.bg-white.rounded-3.shadow-sm{ background:#fff !important; border:1px solid var(--border-soft); box-shadow:0 1px 3px rgba(38,34,29,.06) !important; }

.history-figure{ margin:0 0 1rem 0; }
.history-figure img{ width:100%; height:auto; border-radius:8px; cursor:pointer; display:block; }
.history-figure figcaption{ font-size:.85rem; color:var(--ink-soft); margin-top:.25rem; font-family:var(--font-mono); }

/* location.html/contact.html no longer use fixed bg images that clashed with the light theme */
