/*******************************************************************************************

Blogus Free Joomla! 3 Responsive Template - April 2015
Package tpl-blogus-free-j3.zip
Version 1.0

@Copyright (C) 2015 JooThemes.net

http://joothemes.net

*******************************************************************************************/


:root{
  --primary: #274C36;
  --secondary: #D49A6A;
  --accent: #C46B4A;
  --bg: #F6EEE3;
  --text: #123123;
  --muted: #556b58;
  --container-max:1100px;
}
* { box-sizing: border-box; }
body { margin:0; font-family: "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial; background:var(--bg); color:var(--text); }
.container { width: 92%; max-width:var(--container-max); margin:0 auto; }
a { color:var(--primary); text-decoration:none; }
.site-header { background:transparent; }
.header-top { display:flex; align-items:center; gap:1rem; padding:1.25rem 0; }
.brand { display:flex; align-items:center; gap:1rem; }
.logo-placeholder img { width:0px; height:0px; border-radius:12px; background:#fff; display:block; }
.site-title h1 { margin:0; font-family:"Poppins", sans-serif; font-size:2rem; color:var(--primary); line-height:1; }
.site-title .tagline { margin:0; color:var(--muted); font-size:1rem; }
.header-cta { margin-left:auto; }
.btn { display:inline-block; padding:0.6rem 1rem; border-radius:999px; font-weight:700; text-decoration:none; }
.btn.signup { background:var(--secondary); color:#fff; }
.btn.primary { background:var(--accent); color:#fff; padding:0.75rem 1.15rem; border-radius:14px; box-shadow:0 6px 18px rgba(196,107,74,0.14); }
.main-nav-wrap {  position:relative; }
.menu-toggle { display:none; background:transparent; border:1px solid rgba(0,0,0,0.06); padding:0.45rem 0.6rem; border-radius:8px; cursor:pointer; }
.main-nav { margin-top:0.5rem; }
.main-nav ul { list-style:none; margin:0; padding:0; display:flex; gap:1.25rem; align-items:center; font-weight:600; }
.main-nav a { padding:0.35rem 0.5rem; color:var(--primary); border-radius:8px; }
.main-nav a.active, .main-nav a:hover { color:var(--accent); background:rgba(196,107,74,0.06); }
.hero { padding:center; width:900px; text-align:center; position:relative; border-radius:14px; overflow:hidden; margin-bottom:1.25rem; }
.hero-img { width:900px; height:300px; object-fit:cover; display:block; filter: saturate(0.98) contrast(1); }
.hero-overlay { position:absolute; left:0; top:0; right:0; bottom:0; display:flex; align-items:center; }
.hero-text { padding:3rem; color:#fff; text-shadow:0 6px 18px rgba(0,0,0,0.35); max-width:720px; margin-left:0; }
.hero-text h2 { margin:0 0 0.5rem 0; font-family:"Poppins", sans-serif; font-size:3rem; color:#fff; }
.hero-text p { margin:0 0 1rem 0; font-size:1.05rem; color:rgba(255,255,255,0.95); }

/* Gallery styles */
.gallery-grid { display:grid; gap:1rem; grid-template-columns: repeat(3, 1fr); }
.gallery-item { position:relative; overflow:hidden; border-radius:10px; }
.gallery-item img { width:100%; height:100%; object-fit:cover; display:block; transition: transform 0.4s ease; }
.gallery-item:hover img { transform: scale(1.06); }
.gallery-caption { position:absolute; left:0; bottom:0; right:0; padding:0.5rem 0.75rem; background:linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.35)); color:#fff; font-weight:600; font-size:0.95rem; }

/* Lightbox modal */
.lightbox { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.8); align-items:center; justify-content:center; z-index:9999; }
.lightbox.open { display:flex; }
.lightbox img { max-width:92%; max-height:86%; border-radius:8px; box-shadow: 0 16px 40px rgba(0,0,0,0.6); }

/* Main layout */
.site-main { padding:1.5rem 0; }
.grid { display:flex; gap:1.25rem; align-items:flex-start; }
.content { flex:1; background:#fff; padding:1.25rem; border-radius:12px; box-shadow: 0 10px 30px rgba(18,49,35,0.04); }
.sidebar { width:300px; flex-shrink:0; }
.module { background:linear-gradient(180deg, #fff, #fff); padding:0.85rem; border-radius:10px; box-shadow: 0 6px 18px rgba(0,0,0,0.03); margin-bottom:1rem; }
.module h3 { margin:0 0 0.5rem 0; font-family:"Poppins", sans-serif; color:var(--primary); }
.site-footer { margin-top:1.5rem; padding:1rem 0; background:transparent; }
.footer-inner { display:flex; flex-direction:column; gap:0.5rem; align-items:center; color:var(--muted); font-size:0.95rem; }

@media (max-width: 900px){
  .grid { flex-direction:column; }
  .sidebar { width:100%; order:2; }
  .content { order:1; }
  .main-nav { display:none; position:absolute; left:8%; right:8%; top:100%; background:var(--bg); padding:1rem; box-shadow:0 8px 24px rgba(0,0,0,0.08); border-radius:12px; }
  .menu-toggle { display:inline-flex; margin-left:auto; }
  .hero-img { height:320px; }
  .hero-text { padding:1.25rem; font-size:0.95rem; }
  .site-title h1 { font-size:1.6rem; }
  .logo-placeholder img { width:86px; height:86px; }
  .btn.primary { padding:0.6rem 0.9rem; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px){
  .gallery-grid { grid-template-columns: repeat(1, 1fr); }
}