﻿:root { --text:#2a3128; --muted:#5e6758; --brand-strong:#1f5f3f; --line:rgba(42,49,40,.14); --card:rgba(255,255,255,.74); --shadow:0 18px 45px rgba(56,45,26,.16); }
        *{box-sizing:border-box;margin:0;padding:0}
        body{font-family:"Manrope",sans-serif;color:var(--text);background:radial-gradient(circle at 82% 8%, rgba(214, 144, 77, .34) 0%, rgba(214, 144, 77, 0) 34%),radial-gradient(circle at 10% 24%, rgba(43, 122, 82, .25) 0%, rgba(43, 122, 82, 0) 38%),linear-gradient(155deg,#f7f2e8 0%,#efe7d8 50%,#f9f4ea 100%);min-height:100vh;line-height:1.55}
        .site-shell{width:min(1120px,92%);margin:28px auto;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:linear-gradient(150deg, rgba(255,255,255,.72), rgba(255,255,255,.54));backdrop-filter:blur(8px);box-shadow:var(--shadow)}
        header{padding:18px 28px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.55)}
        .nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
        .brand{font-family:"Cormorant Garamond",serif;font-size:2rem;font-weight:700;color:var(--brand-strong);text-decoration:none;display:inline-flex;align-items:center;gap:8px}
        .brand-logo{height:44px;width:auto}
        nav{display:flex;flex-wrap:wrap;gap:8px}
        nav a{text-decoration:none;color:var(--text);font-size:.92rem;font-weight:600;padding:8px 12px;border-radius:999px;transition:.2s ease}
        nav a:hover,nav a[aria-current="page"]{color:var(--brand-strong);background:rgba(43,122,82,.12)}
        .hero{padding:44px 28px 22px}
        .eyebrow{display:inline-block;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--brand-strong);margin-bottom:10px;font-weight:700}
        h1{font-family:"Cormorant Garamond",serif;font-size:clamp(2.2rem,5vw,3.6rem);line-height:.98;margin-bottom:14px}
        .section{padding:0 28px 44px}
        .panel{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden}
        .panel img{width:100%;height:340px;object-fit:cover;display:block}
        .panel-content{padding:22px}
        .panel-content p{color:var(--muted);margin-bottom:14px}
        .section-title{font-family:"Cormorant Garamond",serif;font-size:clamp(1.9rem,4vw,2.8rem);margin-bottom:14px}
        .phase-grid{display:grid;gap:14px}
        .phase-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
        .subcard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
        .subcard{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:12px;padding:12px}
        .subcard img{width:100%;height:150px;object-fit:cover;border-radius:10px;margin-bottom:10px;display:block}
        .subcard h3{font-family:"Cormorant Garamond",serif;font-size:1.45rem;line-height:1.12;color:#24422d;margin:0 0 8px}
        .subcard p{color:var(--muted);font-size:.94rem;margin-bottom:10px}
        .subcard p:last-child{margin-bottom:0}
        footer{padding:14px 28px 20px;font-size:.83rem;color:var(--muted);background:rgba(255,255,255,.72);display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line)}
        .footer-social{display:flex;gap:12px;align-items:center}
        .footer-social a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--muted);border:1px solid var(--line);background:rgba(255,255,255,.6);text-decoration:none;transition:.2s ease}
        .footer-social a:hover{color:var(--brand-strong);border-color:var(--brand-strong);background:rgba(31,95,63,.08);transform:translateY(-2px)}
        @media (max-width:900px){.subcard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
        @media (max-width:640px){.site-shell{width:95%;border-radius:20px}header,.hero,.section,footer{padding-left:16px;padding-right:16px}.brand{font-size:1.7rem}.panel img{height:250px}.subcard-grid{grid-template-columns:1fr}}

:where(a, button, [role="button"], summary, input, select, textarea):focus-visible {
    outline: 3px solid #1f5f3f;
    outline-offset: 2px;
}

nav a:focus-visible,
.btn:focus-visible,
.map-link:focus-visible {
    box-shadow: 0 0 0 3px rgba(31, 95, 63, 0.22);
    border-radius: 10px;
}
