/* =========================================================
   วัดป่าพุทธิสุทธาราม — MODERNIZE PATCH v2
   Theme: Pastel mint × soft peach · Modern serene
   ========================================================= */
:root {
  --m-bg-page:#F2F8F4; --m-bg-surface:#FFFFFF; --m-bg-soft:#E8F2EC;
  --m-mist:#E8F2EC; --m-pastel:#D8E8DE; --m-mint:#A8CDB8;
  --m-mid:#7BB098; --m-primary:#4F8970; --m-deep:#2D5A48; --m-deep-darker:#1F4538;
  --m-peach-soft:#FAE6D5; --m-peach:#F4D2B5; --m-peach-mid:#E89968; --m-peach-deep:#B97D54;
  --m-text:#243C32; --m-text-mid:#4F635A; --m-text-mute:#8B9A91;
  --m-border:#E2EBE5; --m-border-soft:#EEF3EF;
  --m-shadow-soft:0 1px 3px rgba(36,60,50,.04),0 1px 2px rgba(36,60,50,.03);
  --m-shadow-card:0 4px 16px rgba(36,60,50,.06),0 1px 4px rgba(36,60,50,.04);
  --m-shadow-cta:0 4px 14px rgba(79,137,112,.28);
  --m-shadow-soft-cta:0 2px 8px rgba(79,137,112,.22);
}
body { background:var(--m-bg-page); color:var(--m-text); }
.navbar { background:rgba(242,248,244,.92); backdrop-filter:blur(14px) saturate(1.2); -webkit-backdrop-filter:blur(14px) saturate(1.2); border-bottom:0.5px solid var(--m-border); }
.navbar.scrolled { background:rgba(242,248,244,.98); box-shadow:0 1px 3px rgba(36,60,50,.05); }
.nav-brand img { border-radius:9px; }
.nav-brand-text .title { color:var(--m-text); font-weight:600; }
.nav-brand-text .sub { color:var(--m-text-mute); letter-spacing:0.18em; }
.nav-menu a { font-weight:400; color:var(--m-text); }
.nav-menu a:hover { color:var(--m-primary); background:var(--m-mist); }
.nav-menu a.active { color:var(--m-primary); background:transparent; font-weight:500; }
.nav-menu a.active::after { background:var(--m-mid); width:20px; height:2px; bottom:2px; }
.nav-cta { background:linear-gradient(135deg,var(--m-mid) 0%,var(--m-primary) 100%) !important; color:white !important; border-radius:22px !important; padding:9px 20px !important; box-shadow:var(--m-shadow-soft-cta) !important; font-weight:500 !important; letter-spacing:0 !important; }
.nav-cta:hover { background:linear-gradient(135deg,var(--m-primary) 0%,var(--m-deep) 100%) !important; box-shadow:var(--m-shadow-cta) !important; }
.hero::before { background:linear-gradient(180deg,rgba(45,90,72,.30) 0%,rgba(31,69,56,.55) 100%),url("assets/images/scenes/scene-03.jpg") center/cover; animation:none !important; }
.hero h1 { font-weight:500; letter-spacing:0; text-shadow:0 2px 12px rgba(0,0,0,.25); }
.hero-sub { font-weight:400; text-shadow:none; color:rgba(255,255,255,.95); }
.hero .btn-primary { animation:none !important; background:linear-gradient(135deg,var(--m-mid) 0%,var(--m-primary) 100%); box-shadow:0 4px 16px rgba(0,0,0,.18); border:none; }
.hero .btn-primary:hover { background:linear-gradient(135deg,var(--m-primary) 0%,var(--m-deep) 100%); transform:translateY(-1px); }
.hero .btn-primary::before, .hero .btn-gold::before { display:none; }
.marquee, .hero-logo, .hero-scroll, .hero-particles { display:none; }
.page-hero { min-height:auto; padding:56px 28px 32px; background:var(--m-bg-page); color:var(--m-text); text-align:left; border-bottom:0.5px solid var(--m-border); overflow:visible; }
.page-hero::before, .page-hero::after { display:none; }
.page-hero .container { max-width:1200px; position:relative; }
.page-hero h1 { color:var(--m-text); font-family:var(--font-display); font-weight:500; font-size:clamp(1.8rem,2vw + 1rem,2.6rem); margin-bottom:8px; letter-spacing:-.01em; background:none; -webkit-text-fill-color:var(--m-text); text-shadow:none; }
.page-hero .crumbs { color:var(--m-text-mute); font-size:.85rem; letter-spacing:0; }
.page-hero .crumbs a { color:var(--m-primary); }
.page-hero .crumbs a:hover { color:var(--m-deep); }
.section-head h2, .welcome h2 { background:none; -webkit-text-fill-color:var(--m-text); color:var(--m-text); font-weight:500; }
.section-head .eyebrow, .welcome .eyebrow { color:var(--m-text-mute); font-weight:500; letter-spacing:3px; font-size:.72rem; padding:0; text-transform:uppercase; }
.section-head .eyebrow::before, .section-head .eyebrow::after { display:none; }
.card { background:var(--m-bg-surface); border:0.5px solid var(--m-border); border-radius:16px; box-shadow:var(--m-shadow-soft); transition:transform .3s ease,box-shadow .3s ease; }
.card:hover { transform:translateY(-3px); box-shadow:var(--m-shadow-card); }
.card::before { display:none; }
.card-img { height:200px; background:linear-gradient(135deg,var(--m-pastel) 0%,var(--m-mint) 60%,var(--m-mid) 100%); position:relative; }
.card-img::after, .card-img::before { display:none; }
.card-img .icon { color:rgba(45,90,72,.4); width:40px; height:40px; stroke-width:1.4; }
.card-img-peach { background:linear-gradient(135deg,var(--m-peach-soft) 0%,var(--m-peach) 100%); }
.card-img-peach .icon { color:rgba(185,125,84,.55); }
.card-tag { background:var(--m-mist); color:var(--m-primary); font-weight:500; text-transform:none; letter-spacing:.3px; font-size:.72rem; padding:4px 11px; border-radius:7px; }
.card h3 { color:var(--m-text); font-family:var(--font-display); font-weight:500; font-size:1.15rem; margin-bottom:8px; }
.card p { color:var(--m-text-mid); font-size:.95rem; line-height:1.7; }
.card-meta { color:var(--m-text-mute); font-size:.82rem; border-top:0.5px solid var(--m-border); padding-top:14px; }
.card-link { color:var(--m-primary); font-weight:500; }
.card-link:hover { color:var(--m-deep); }
.btn { font-weight:500; letter-spacing:0; border-radius:10px; padding:13px 26px; font-size:.95rem; transition:background .25s ease,box-shadow .25s ease,transform .15s ease; border:none; }
.btn-primary { background:linear-gradient(135deg,var(--m-mid) 0%,var(--m-primary) 100%); color:white; box-shadow:var(--m-shadow-soft-cta); }
.btn-primary:hover { background:linear-gradient(135deg,var(--m-primary) 0%,var(--m-deep) 100%); transform:translateY(-1px); box-shadow:var(--m-shadow-cta); }
.btn-primary::before { display:none; }
.btn-gold { background:linear-gradient(135deg,var(--m-peach-mid) 0%,var(--m-peach-deep) 100%); color:white; box-shadow:0 2px 8px rgba(232,153,104,.28); }
.btn-gold:hover { background:linear-gradient(135deg,var(--m-peach-deep) 0%,#9D6843 100%); transform:translateY(-1px); box-shadow:0 4px 14px rgba(232,153,104,.36); }
.btn-gold::before { display:none; }
.btn-ghost { border:0.5px solid var(--m-border); color:var(--m-primary); background:var(--m-bg-surface); }
.btn-ghost:hover { background:var(--m-mist); color:var(--m-deep); border-color:var(--m-mid); }
.btn-secondary { border:0.5px solid rgba(255,255,255,.7); background:rgba(255,255,255,.1); color:white; }
.btn-secondary:hover { background:rgba(255,255,255,.18); border-color:white; }
.welcome { background:var(--m-bg-page); }
.welcome p { color:var(--m-text-mid); }
.welcome .eyebrow { color:var(--m-peach-deep); font-weight:500; }
.grid-section { background:var(--m-bg-soft); }
.bg-white, .bg-ivory, .bg-cream { background:var(--m-bg-surface); }
.stats-band { background:var(--m-bg-surface); color:var(--m-text); padding:72px 28px; border-top:0.5px solid var(--m-border); border-bottom:0.5px solid var(--m-border); }
.stats-band::before, .stats-band::after { display:none; }
.stat .num { background:none; -webkit-text-fill-color:var(--m-text); color:var(--m-text); animation:none; font-weight:500; }
.stat .num-suffix { color:var(--m-text-mid); }
.stat .label { color:var(--m-text-mute); }
.map-cta-info { background:linear-gradient(135deg,var(--m-deep) 0%,var(--m-deep-darker) 100%); }
.map-cta-info::before { display:none; }
.map-cta-info h2 { color:white; font-weight:500; }
.map-cta-info p { color:rgba(255,255,255,.85); }
.map-cta-info .addr strong { color:rgba(255,255,255,.95); letter-spacing:0; }
.quote { background:linear-gradient(180deg,var(--m-peach-soft) 0%,#F5DCC0 50%,var(--m-peach-soft) 100%); padding:80px 28px; position:relative; overflow:hidden; }
.quote::before, .quote::after { color:var(--m-peach); opacity:0.6; font-size:4rem; }
.quote blockquote { color:var(--m-deep); font-weight:400; font-style:italic; }
.quote cite { color:var(--m-peach-deep); letter-spacing:1.5px; font-weight:500; }
.quote .lotus-watermark { opacity:0.08; color:var(--m-peach-deep); }
.divider { margin:36px 0; gap:16px; }
.divider::before, .divider::after { flex:0 1 60px; background:linear-gradient(to right,transparent,var(--m-border) 50%,transparent); }
.divider svg { animation:none !important; width:18px; height:18px; color:var(--m-peach-deep); opacity:.7; }
.abbot-hero { background:var(--m-bg-surface); border:0.5px solid var(--m-border); box-shadow:var(--m-shadow-card); border-radius:18px; padding:36px; margin-top:24px; }
.abbot-photo { background:linear-gradient(160deg,var(--m-pastel) 0%,var(--m-mint) 50%,var(--m-mid) 100%); border-radius:14px; }
.abbot-info h2 { color:var(--m-text); font-weight:500; }
.abbot-info .chaya { color:var(--m-text-mute); font-family:var(--font-body); font-weight:400; font-size:.95rem; }
.abbot-info .role { color:var(--m-text-mid); font-size:.92rem; }
.abbot-info blockquote { background:var(--m-mist); border-left:2px solid var(--m-mid); color:var(--m-deep); font-style:italic; }
.donate-card { background:var(--m-bg-surface); border:0.5px solid var(--m-border); box-shadow:var(--m-shadow-soft); border-radius:16px; }
.donate-card:hover { transform:translateY(-3px); border-color:var(--m-mint); box-shadow:var(--m-shadow-card); }
.donate-card > .icon-wrap { background:linear-gradient(135deg,var(--m-mist) 0%,var(--m-pastel) 100%); color:var(--m-primary); box-shadow:none; }
.donate-card:hover > .icon-wrap { background:linear-gradient(135deg,var(--m-pastel) 0%,var(--m-mint) 100%); color:var(--m-deep); }
.donate-card h3 { color:var(--m-text); font-weight:500; }
.donate-card .price { color:var(--m-primary); font-weight:500; letter-spacing:0; }
.bank-card { background:var(--m-bg-surface); border:0.5px solid var(--m-border); box-shadow:var(--m-shadow-soft); }
.bank-info strong { color:var(--m-text); }
.contact-card { background:var(--m-bg-surface); border:0.5px solid var(--m-border); box-shadow:var(--m-shadow-soft); border-radius:16px; }
.contact-card h3 { color:var(--m-text); font-weight:500; }
.contact-icon { background:linear-gradient(135deg,var(--m-mist) 0%,var(--m-pastel) 100%); color:var(--m-primary); }
.contact-text strong { color:var(--m-text); }
.contact-text span { color:var(--m-text-mid); }
.timeline::before { background:linear-gradient(180deg,transparent 0%,var(--m-border) 12%,var(--m-mid) 50%,var(--m-border) 88%,transparent 100%); width:1px; }
.timeline-item::before { width:12px; height:12px; background:var(--m-mid); box-shadow:0 0 0 3px var(--m-bg-page),0 0 0 4px var(--m-pastel); }
.timeline-item:hover::before { background:var(--m-primary); box-shadow:0 0 0 3px var(--m-bg-page),0 0 0 4px var(--m-mid); transform:scale(1.15); }
.timeline-card { background:var(--m-bg-surface); border:0.5px solid var(--m-border); box-shadow:var(--m-shadow-soft); border-radius:14px; }
.timeline-year { color:var(--m-peach-deep); font-weight:500; letter-spacing:1.5px; font-size:.78rem; }
.timeline-item h4 { color:var(--m-text); font-weight:500; }
.timeline-item p { color:var(--m-text-mid); }
footer { background:linear-gradient(180deg,var(--m-deep) 0%,var(--m-deep-darker) 100%); padding:60px 28px 24px; }
footer::before { display:none; }
.footer-grid { border-bottom:0.5px solid rgba(255,255,255,.1); padding-bottom:36px; }
.footer-col h4 { color:rgba(255,255,255,.5); font-weight:500; letter-spacing:2px; font-size:.72rem; }
.footer-col a { color:rgba(255,255,255,.75); font-size:.92rem; }
.footer-col a:hover { color:white; padding-left:0; }
.footer-brand h3 { color:white; font-weight:500; }
.footer-brand p { color:rgba(255,255,255,.65); }
.footer-brand img { background:linear-gradient(135deg,var(--m-mid) 0%,var(--m-primary) 100%); border-radius:9px; padding:6px; }
.footer-social a { background:rgba(255,255,255,.08); border:0.5px solid rgba(255,255,255,.1); }
.footer-social a:hover { background:var(--m-mid); border-color:var(--m-mid); transform:none; }
.footer-bottom { color:rgba(255,255,255,.45); letter-spacing:0; padding-top:20px; }
.page-progress { background:linear-gradient(to right,var(--m-mid),var(--m-primary)); animation:none !important; box-shadow:none; height:2px; }
.reveal, .reveal-left, .reveal-right, .reveal-scale { transition-duration:.5s; }
.reveal { transform:translateY(16px); }
.reveal-left { transform:translateX(-20px); }
.reveal-right { transform:translateX(20px); }
section { padding:80px 0; }
section.narrow { padding:56px 0; }
.section-head { margin-bottom:36px; }
::selection { background:var(--m-pastel); color:var(--m-deep); }
::-webkit-scrollbar-thumb { background:var(--m-mint); border:2px solid var(--m-bg-page); }
::-webkit-scrollbar-thumb:hover { background:var(--m-primary); }
::-webkit-scrollbar-track { background:var(--m-bg-page); }
@media (max-width:960px) { .page-hero { padding:44px 20px 28px; } }
@media (max-width:560px) { section { padding:64px 0; } .page-hero { padding:36px 20px 24px; } }
