/* ===== Agetha Child design CSS =====
   Consolidated from live page content (2026-09-02), then rebuilt balanced
   (2026-09-03): previously 4 unclosed @media(max-width:820px) braces trapped
   .card/.gal/.stats/.page-head etc inside mobile queries, so desktop got no
   layout. All rules now live at top level; mobile overrides at the end. */
img{max-width:100%;height:auto}
figure{margin:0}

/* ---------- layout ---------- */
.wrap{max-width:1100px;margin:0 auto;padding:0 24px}
.block{padding:64px 24px}
.block.alt{background:#f2ecdc}
.block.dark{background:#1d1d1d;color:#e6dcc3}
.block.dark h2,.block.dark h3{color:#fff}
.block.dark .kicker{color:#d4a017}
.block h1{font-size:clamp(26px,3.4vw,38px);margin:0 0 12px}
.block h2{font-size:clamp(22px,2.8vw,30px);margin:0 0 14px}
.block h3{font-size:19px;margin:0 0 10px}
.block p{margin:0 0 16px;max-width:72ch}
.block p.lead{font-size:18px;color:#444}
.center{text-align:center}
.center .accent{margin-left:auto;margin-right:auto}
.accent{width:64px;height:3px;background:#d4a017;border:0;margin:0 0 28px}
hr{width:64px;height:3px;background:#d4a017;border:0;margin:0 0 28px}
a{color:#a07a10}
.muted{color:#6b6455}

/* ---------- headings & kicker ---------- */
.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:13px;color:#b8890f;font-weight:700;margin:0 0 6px}

/* ---------- hero ---------- */
.hero{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:clamp(420px,68vh,780px);background-size:cover;background-position:center;color:#fff}
.hero::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.42)}
.hero-inner{position:relative;max-width:820px;padding:72px 24px}
.hero h1{margin:0 0 10px;font-size:clamp(30px,5vw,52px);line-height:1.12;color:#fff;letter-spacing:.01em}
.hero h2{margin:0 0 10px;font-size:clamp(26px,4vw,42px);line-height:1.15;color:#fff;letter-spacing:.01em}
.hero p{margin:0 auto 22px;font-size:clamp(15px,2vw,19px);color:#f0e8d5;max-width:660px}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:#d4a017;color:#fff;padding:13px 30px;border-radius:6px;text-decoration:none;font-weight:600;font-size:16px;border:2px solid #d4a017}
.btn:hover{background:#b8890f;border-color:#b8890f}
.btn.ghost{background:transparent;border-color:#fff;color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.14)}
.btn.dark{background:transparent;border-color:#1d1d1d;color:#1d1d1d}
.btn.dark:hover{background:#1d1d1d;color:#fff}
.btn-row{margin:0}

/* ---------- cards ---------- */
.card{background:#fff;border:1px solid #e6dcc3;border-radius:10px;padding:22px;box-shadow:0 4px 14px rgba(0,0,0,.05);display:flex;flex-direction:column;height:100%;transition:transform .22s ease,box-shadow .22s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(29,29,29,.10)}
.card img{border-radius:6px;margin-bottom:14px;width:100%;height:230px;object-fit:cover}
.card h3{margin:0 0 8px}
.card p{margin:0;color:#444;font-size:15px;flex-grow:1}
.grid{display:grid;gap:28px;align-items:stretch}
.grid-2{grid-template-columns:1fr 1fr}
.grid-3{grid-template-columns:repeat(3,1fr)}

/* ---------- quote block ---------- */
.quote{font-size:clamp(18px,2.4vw,24px);font-style:italic;color:#333;max-width:820px;margin:0 auto;border-left:4px solid #d4a017;padding:8px 0 8px 28px;text-align:left}
.quote cite{display:block;font-style:normal;font-size:15px;color:#666;margin-top:12px}
.two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.two-col img{border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12)}

/* ---------- timeline ---------- */
.timeline{max-width:1080px;margin:0 auto;position:relative}
.timeline::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:#e6dcc3;transform:translateX(-1px)}
.tl-intro{max-width:760px;margin:0 auto 40px;text-align:center}
.tl-intro h2{font-size:clamp(22px,2.8vw,30px);margin:0}
.tl-item{background:#fff;border:1px solid #e6dcc3;border-radius:10px;padding:20px 22px;box-shadow:0 4px 14px rgba(0,0,0,.05);width:calc(50% - 34px);margin-bottom:28px;position:relative}
.tl-item::after{content:"";position:absolute;top:30px;width:13px;height:13px;border-radius:50%;background:#d4a017;border:2px solid #fff;box-shadow:0 0 0 2px #d4a017}
.tl-item:nth-child(odd){margin-left:auto}
.tl-item:nth-child(odd)::after{left:-44px}
.tl-item:nth-child(even){margin-right:auto}
.tl-item:nth-child(even)::after{right:-44px}
.tl-item.with-media{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;align-items:start}
.tl-year{font-weight:800;color:#b8890f;font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px}
.tl-item h3{margin:0 0 6px;font-size:19px}
.tl-item p{margin:0 0 8px;color:#3a3a3a;font-size:15px}
.tl-media{display:grid;gap:10px;border-radius:8px}
.tl-media.multi{grid-template-columns:1fr 1fr}
.tl-media img{width:100%;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08);transition:transform .35s ease;position:relative;z-index:1}
.tl-media img:hover{transform:scale(2);z-index:20;box-shadow:0 14px 36px rgba(0,0,0,.28)}
.tl-item.tl-reveal{opacity:0;transform:translateY(26px);transition:opacity .55s ease,transform .55s ease}
.tl-item.tl-reveal.tl-in{opacity:1;transform:none}

/* ---------- page head ---------- */
.page-head{background:#1d1d1d;color:#fff;padding:56px 24px;text-align:center}
.page-head .wrap{max-width:820px;margin:0 auto}
.page-head h1{margin:0;font-size:clamp(26px,3.4vw,40px);color:#fff}
.page-head p{color:#d9d2bf;margin:8px 0 0}
.soc{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;text-decoration:none}
.soc:hover{background:#d4a017;color:#1d1d1d}

/* ---------- reveal + counters ---------- */
html.js [data-reveal]{opacity:0;transform:translateY(18px)}
html.js [data-reveal].in{opacity:1;transform:none}
[data-reveal]{transition:opacity .55s ease,transform .55s ease;will-change:opacity,transform}
.stats{display:flex;gap:38px;justify-content:center;flex-wrap:wrap;text-align:center;margin-top:34px}
.stat b{display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4.5vw,48px);color:#fff;line-height:1.1}
.stat span{display:block;color:#d9d2bf;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:6px}

/* ---------- gallery: real grid ---------- */
.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.gal figure{display:flex;flex-direction:column;margin:0;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 6px 18px rgba(29,29,29,.08)}
.gal figure img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in;transition:transform .3s ease}
.gal figure img:hover{transform:scale(1.03)}
.gal figcaption{font-size:13px;color:#6b6455;padding:10px 12px 12px;line-height:1.4}
.gal>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;cursor:zoom-in;box-shadow:0 6px 18px rgba(29,29,29,.08);transition:transform .3s ease,box-shadow .3s ease}
.gal>img:hover{transform:scale(1.02);box-shadow:0 12px 26px rgba(29,29,29,.16)}
.gal .hide{display:none}
@media (min-width:900px){.gal{grid-template-columns:repeat(3,1fr)}}

/* ---------- gallery filters ---------- */
.gfilters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}
.gfilter{border:1px solid #e0d4b6;background:#fff;color:#7a5f12;font:inherit;font-weight:600;font-size:14px;padding:8px 18px;border-radius:999px;cursor:pointer;transition:all .2s}
.gfilter:hover{border-color:#d4a017;color:#b8890f}
.gfilter.on{background:#d4a017;border-color:#d4a017;color:#fff}

/* ---------- forms ---------- */
form .field{margin-bottom:14px}
form label{display:block;font-size:14px;font-weight:600;margin-bottom:4px}
form input,form textarea{width:100%;padding:11px 12px;border:1px solid #e6dcc3;border-radius:6px;background:#fff;font:inherit;color:#2b2b2b}
form textarea{min-height:130px}
.note{font-size:13px;color:#666;margin-top:10px}
.contact-list{list-style:none;padding:0;margin:0 0 18px}
.contact-list p{margin:0 0 6px}
.contact-list li{padding:8px 0;border-bottom:1px solid #e6dcc3}
.contact-list b{display:inline-block;min-width:110px;color:#b8890f}
.cf-status{font-size:14px;color:#2b6b2b;margin-top:10px}
.fb-embeds iframe{max-width:100%;width:100%}

/* ---------- lightbox ---------- */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;pointer-events:none;transition:opacity .2s;cursor:zoom-out}
.lb.open{opacity:1;pointer-events:auto}
.lb img{max-width:88vw;max-height:88vh;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb .lb-x{position:absolute;top:16px;right:26px;color:#fff;font-size:40px;line-height:1;cursor:pointer;user-select:none}
.lb .lb-prev,.lb .lb-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);color:#fff;border:0;font-size:38px;line-height:1;width:52px;height:52px;border-radius:50%;cursor:pointer;user-select:none;transition:background .2s}
.lb .lb-prev:hover,.lb .lb-next:hover{background:rgba(255,255,255,.28)}
.lb .lb-prev{left:14px}
.lb .lb-next{right:14px}

/* ---------- mobile overrides ---------- */
@media(max-width:820px){
  .grid-2,.grid-3{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr}
  .timeline::before{left:14px}
  .tl-item{width:100%;margin-left:0 !important;margin-right:0 !important;padding-left:52px}
  .tl-item::after{left:8px !important;right:auto !important}
  .tl-item.with-media{grid-template-columns:1fr}
  .lb .lb-prev{left:6px}
  .lb .lb-next{right:6px}
}
