:root{
  --bg:#f5efe5;
  --panel:rgba(255,255,255,.94);
  --ink:#173126;
  --muted:#5f6f64;
  --line:rgba(23,49,38,.10);
  --accent:#d06a30;
  --accent-dark:#213e31;
  --accent-soft:rgba(208,106,48,.10);
  --shadow:0 22px 60px rgba(23,49,38,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left, rgba(208,106,48,.16), transparent 28%),
    radial-gradient(circle at top right, rgba(33,62,49,.14), transparent 26%),
    linear-gradient(180deg, #f8f3eb 0%, #f2eadf 100%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-shell{width:min(1180px, calc(100% - 32px));margin:0 auto}
.site-header{
  width:min(1180px, calc(100% - 32px));
  margin:18px auto 20px;
  padding:16px 20px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(28,35,41,.96) 0%, rgba(86,91,98,.90) 48%, rgba(35,49,61,.90) 100%);
  color:#fff;
  box-shadow:0 18px 42px rgba(0,0,0,.16);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{display:grid;gap:4px}
.brand strong{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(1.7rem,2.4vw,2.3rem);
  line-height:1;
}
.brand span{color:rgba(255,255,255,.86);font-size:.98rem}
.nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1 1 auto;flex-wrap:wrap}
.nav a{color:rgba(255,255,255,.86);font-weight:600}
.nav a.is-active{color:#fff;font-weight:800}
.header-cta{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 20px;border-radius:999px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);
  color:#fff;font-weight:800;
}
.page{padding:10px 0 60px}
.panel{
  border:1px solid var(--line);
  border-radius:30px;
  background:var(--panel);
  box-shadow:var(--shadow);
}
.section{padding:clamp(22px,4vw,36px)}
.kicker{
  display:inline-flex;align-items:center;min-height:30px;
  padding:0 12px;border-radius:999px;
  background:rgba(33,62,49,.08);color:var(--accent-dark);
  font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
h1,h2,h3{
  margin:0;
  font-family:"Cormorant Garamond",Georgia,serif;
  line-height:1.02;
  letter-spacing:-.04em;
}
h1{font-size:clamp(2.9rem,5.8vw,5.6rem);max-width:11ch}
h2{font-size:clamp(2rem,3.6vw,3.4rem)}
.lead{margin:16px 0 0;max-width:60ch;color:var(--muted);font-size:1.08rem;line-height:1.72}
.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 20px;border-radius:999px;
  border:1px solid transparent;font-weight:800;white-space:nowrap;
}
.btn-primary{background:linear-gradient(135deg,var(--accent),#e08042);color:#fff;box-shadow:0 16px 30px rgba(208,106,48,.24)}
.btn-secondary{background:rgba(33,62,49,.08);border-color:rgba(33,62,49,.10);color:var(--ink)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}
.hero-copy{padding:34px}
.hero-stack{
  padding:18px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(19,38,31,.96) 0%, rgba(49,76,60,.96) 58%, rgba(208,106,48,.96) 100%);
  color:#fff;
  display:grid;
  gap:14px;
  min-height:540px;
}
.hero-card{
  padding:16px;border-radius:20px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  display:grid;gap:12px;align-content:start;
}
.hero-card::before{
  content:"";
  display:block;
  min-height:260px;
  border-radius:16px;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.18), transparent 20%),
    radial-gradient(circle at 76% 28%, rgba(255,255,255,.12), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.08) 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10);
}
.hero-card:nth-child(1)::before{background:linear-gradient(180deg, rgba(13,34,28,.96) 0%, rgba(43,74,59,.92) 52%, rgba(208,106,48,.84) 100%)}
.hero-card:nth-child(2)::before{background:linear-gradient(180deg, rgba(229,207,170,.96) 0%, rgba(247,240,226,.94) 56%, rgba(208,106,48,.72) 100%)}
.hero-card:nth-child(3)::before{background:linear-gradient(180deg, rgba(188,214,236,.96) 0%, rgba(242,246,252,.94) 56%, rgba(62,104,145,.74) 100%)}
.hero-card strong{display:block;font-size:1.06rem}
.hero-card span{display:block;color:rgba(255,255,255,.92);line-height:1.7}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat{padding:18px;border-radius:22px;background:#f8f3eb;border:1px solid var(--line)}
.stat span{display:block;color:#6a7a70;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.stat strong{display:block;font-size:1.08rem}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.card{
  padding:20px;border-radius:22px;background:#f8f4ec;border:1px solid var(--line)
}
.card span{display:block;color:#6a7a70;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.card strong{display:block;margin-bottom:8px;font-size:1.12rem}
.card p{margin:0;color:var(--muted);line-height:1.65}
.band{
  padding:22px 0 0;
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.quote{
  padding:22px;border-radius:22px;background:rgba(255,255,255,.7);border:1px solid var(--line)
}
.quote p{margin:0;color:var(--muted);line-height:1.65}
.feature-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.feature{
  padding:18px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid var(--line)
}
.feature strong{display:block;margin-bottom:8px;font-size:1.04rem}
.feature p{margin:0;color:var(--muted);line-height:1.65}
.footer{
  margin:28px 0 0;
  padding:28px 0 40px;
  color:#65756a;
}
.footer-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:16px}
.footer-card{padding:18px;border-radius:22px;background:rgba(255,255,255,.75);border:1px solid var(--line)}
.footer-card h3{font-size:1.6rem}
.footer-nav{display:grid;gap:10px}
.footer-nav a{font-weight:700;color:#29483b}
.page-hero{
  display:grid;
  grid-template-columns:1fr .95fr;
  gap:22px;
  align-items:start;
}
.page-hero .section{padding:30px}
.page-hero .side{
  padding:26px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(19,38,31,.96) 0%, rgba(49,76,60,.96) 58%, rgba(208,106,48,.96) 100%);
  color:#fff;
}
.page-hero .side .box{padding:16px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);margin-top:14px}
.map{
  min-height:260px;
  border-radius:22px;
  background:
    radial-gradient(circle at 20% 20%, rgba(208,106,48,.18), transparent 24%),
    radial-gradient(circle at 70% 40%, rgba(49,86,67,.22), transparent 22%),
    linear-gradient(180deg, #f7f3ed 0%, #ece3d4 100%);
  border:1px solid var(--line);
}
@media (max-width: 980px){
  .site-header,.hero-grid,.stats,.cards,.band,.feature-list,.footer-grid,.page-hero{grid-template-columns:1fr}
  .site-header{flex-wrap:wrap;justify-content:center}
  .brand{text-align:center;justify-items:center}
}
@media (max-width: 720px){
  .site-shell,.site-header{width:min(100% - 24px,1180px)}
  .hero-copy,.section,.page-hero .section{padding:22px}
  h1{max-width:100%}
}
