.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,0.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--c-border);
  transition:box-shadow var(--dur) var(--ease);
}
.site-header.is-scrolled{box-shadow:0 2px 20px rgba(16,42,67,0.06)}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-3);
  padding:var(--space-2) var(--space-2);
  max-width:var(--container);
  margin:0 auto;
}
.brand{display:flex;align-items:center;gap:var(--space-2)}
.brand img{height:44px;width:auto}
.brand-text{display:flex;flex-direction:column}
.brand-text strong{
  font-family:var(--font-heading);
  font-size:1.2rem;
  color:var(--c-heading);
  letter-spacing:0.04em;
}
.brand-text small{
  font-size:0.7rem;
  color:var(--c-neutral-500);
  letter-spacing:0.02em;
}
.nav-toggle{display:none;padding:var(--space-1);color:var(--c-primary-700)}
.nav-toggle .icon{width:28px;height:28px}
.site-nav ul{
  display:flex;
  align-items:center;
  gap:var(--space-4);
}
.site-nav a{
  font-size:var(--fs-small);
  font-weight:var(--fw-medium);
  color:var(--c-primary-700);
  position:relative;
  padding:var(--space-1) 0;
  transition:color var(--dur) var(--ease);
}
.site-nav a::after{
  content:'';
  position:absolute;
  left:0;bottom:0;
  width:0;height:2px;
  background:var(--c-secondary-500);
  transition:width var(--dur) var(--ease);
}
.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--c-heading)}
.site-nav a:hover::after,.site-nav a[aria-current="page"]::after{width:100%}
@media(max-width:860px){
  .nav-toggle{display:flex}
  .site-nav{
    position:fixed;
    top:0;right:0;
    width:min(320px,85vw);
    height:100vh;
    background:var(--c-bg);
    border-left:1px solid var(--c-border);
    padding:80px var(--space-3) var(--space-3);
    transform:translateX(100%);
    transition:transform var(--dur) var(--ease);
    overflow-y:auto;
    z-index:99;
  }
  .site-nav.is-open{transform:translateX(0)}
  .site-nav ul{
    flex-direction:column;
    align-items:stretch;
    gap:var(--space-2);
  }
  .site-nav a{
    display:block;
    font-size:1.05rem;
    padding:var(--space-2);
    border-radius:var(--radius-sm);
  }
  .site-nav a:hover,.site-nav a[aria-current="page"]{
    background:var(--c-primary-50);
  }
  .site-nav a::after{display:none}
  .nav-backdrop{
    position:fixed;inset:0;
    background:rgba(16,42,67,0.3);
    opacity:0;visibility:hidden;
    transition:opacity var(--dur) var(--ease),visibility var(--dur);
    z-index:98;
  }
  .nav-backdrop.is-open{opacity:1;visibility:visible}
}
.hero{
  background:linear-gradient(170deg,var(--c-primary-50) 0%,var(--c-neutral-50) 100%);
  padding:var(--space-7) 0 var(--space-6);
  overflow:hidden;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
  align-items:center;
}
@media(min-width:900px){
  .hero-grid{grid-template-columns:1.1fr 1fr;gap:var(--space-6)}
}
.hero-content h1{margin-bottom:var(--space-3)}
.hero-content .lead{margin-bottom:var(--space-4)}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.hero-image{
  position:relative;
  border-radius:var(--radius);
  overflow:hidden;
  aspect-ratio:4/3;
  box-shadow:0 12px 40px rgba(16,42,67,0.12);
}
.hero-image img{width:100%;height:100%;object-fit:cover}
.hero-image::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(135deg,transparent 50%,rgba(16,42,67,0.1) 100%);
}
.btn{
  display:inline-flex;
  align-items:center;
  gap:var(--space-1);
  font-size:var(--fs-small);
  font-weight:var(--fw-bold);
  padding:var(--space-2) var(--space-3);
  border-radius:var(--radius-sm);
  transition:all var(--dur) var(--ease);
  border:2px solid transparent;
}
.btn-primary{
  background:var(--c-primary-700);
  color:#fff;
}
.btn-primary:hover{
  background:var(--c-primary-900);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(16,42,67,0.18);
}
.btn-outline{
  border-color:var(--c-primary-200);
  color:var(--c-primary-700);
}
.btn-outline:hover{
  border-color:var(--c-primary-700);
  background:var(--c-primary-50);
  color:var(--c-heading);
}
.btn .icon{width:18px;height:18px;transition:transform var(--dur) var(--ease)}
.btn:hover .icon{transform:translateX(3px)}
.section{padding:var(--space-7) 0}
.section-alt{background:var(--c-bg-alt)}
.section-header{
  max-width:720px;
  margin:0 auto var(--space-6);
  text-align:center;
}
.section-header h2{margin-bottom:var(--space-2)}
.section-header .lead{color:var(--c-neutral-600)}
.feature-row{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-4);
  align-items:center;
  margin-bottom:var(--space-7);
}
.feature-row:last-child{margin-bottom:0}
@media(min-width:900px){
  .feature-row{grid-template-columns:1fr 1fr;gap:var(--space-6)}
}
.feature-image{
  border-radius:var(--radius);
  overflow:hidden;
  aspect-ratio:4/3;
  box-shadow:0 8px 30px rgba(16,42,67,0.1);
}
.feature-image img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 0.6s var(--ease);
}
.feature-image:hover img{transform:scale(1.04)}
.feature-content .eyebrow{margin-bottom:var(--space-1)}
.feature-content h3{margin-bottom:var(--space-2)}
.feature-content p{color:var(--c-neutral-600)}
.feature-content .icon-lg{
  color:var(--c-secondary-500);
  margin-bottom:var(--space-2);
}
@media(min-width:900px){
  .feature-row.reverse .feature-image{order:2}
  .feature-row.reverse .feature-content{order:1}
}
.principles{
  background:var(--c-primary-900);
  color:var(--c-primary-100);
  padding:var(--space-7) 0;
}
.principles .section-header h2{color:#fff}
.principles .section-header .lead{color:var(--c-primary-200)}
.principles-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-3);
}
@media(min-width:600px){.principles-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.principles-grid{grid-template-columns:repeat(3,1fr)}}
.principle-card{
  padding:var(--space-4);
  border-radius:var(--radius);
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  transition:all var(--dur) var(--ease);
}
.principle-card:hover{
  background:rgba(255,255,255,0.07);
  border-color:var(--c-secondary-500);
  transform:translateY(-4px);
}
.principle-card .icon-lg{color:var(--c-secondary-300);margin-bottom:var(--space-2)}
.principle-card h3{color:#fff;margin-bottom:var(--space-1)}
.principle-card p{color:var(--c-primary-200);font-size:var(--fs-small)}
.cta-band{
  background:linear-gradient(135deg,var(--c-secondary-500),var(--c-secondary-700));
  color:#fff;
  text-align:center;
  padding:var(--space-6) 0;
}
.cta-band h2{color:#fff;margin-bottom:var(--space-2)}
.cta-band p{color:rgba(255,255,255,0.88);max-width:560px;margin:0 auto var(--space-4)}
.cta-band .btn-primary{background:#fff;color:var(--c-secondary-700)}
.cta-band .btn-primary:hover{background:var(--c-neutral-100);color:var(--c-secondary-700)}
.page-hero{
  background:var(--c-primary-50);
  padding:var(--space-6) 0 var(--space-5);
  border-bottom:1px solid var(--c-border);
}
.page-hero h1{margin-bottom:var(--space-2)}
.page-hero .lead{color:var(--c-neutral-600);max-width:680px}
.content-section{padding:var(--space-6) 0}
.prose{max-width:760px}
.prose h2{margin-top:var(--space-5);margin-bottom:var(--space-2)}
.prose h2:first-child{margin-top:0}
.prose h3{margin-top:var(--space-4);margin-bottom:var(--space-1)}
.prose p{color:var(--c-neutral-600);margin-bottom:var(--space-2)}
.prose ul{margin-bottom:var(--space-2);padding-left:0}
.prose ul li{
  position:relative;
  padding-left:var(--space-3);
  color:var(--c-neutral-600);
  margin-bottom:var(--space-1);
}
.prose ul li::before{
  content:'';
  position:absolute;
  left:6px;top:10px;
  width:6px;height:6px;
  border-radius:50%;
  background:var(--c-secondary-500);
}
.values-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-3);
  margin-top:var(--space-4);
}
@media(min-width:600px){.values-grid{grid-template-columns:repeat(2,1fr)}}
.value-card{
  padding:var(--space-4);
  border-radius:var(--radius);
  background:var(--c-bg);
  border:1px solid var(--c-border);
  transition:all var(--dur) var(--ease);
}
.value-card:hover{
  border-color:var(--c-secondary-300);
  box-shadow:0 8px 30px rgba(16,42,67,0.06);
  transform:translateY(-3px);
}
.value-card .icon-lg{color:var(--c-secondary-500);margin-bottom:var(--space-2)}
.value-card h3{margin-bottom:var(--space-1)}
.value-card p{color:var(--c-neutral-600);font-size:var(--fs-small)}
.contact-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
}
@media(min-width:900px){
  .contact-grid{grid-template-columns:1fr 1.2fr;gap:var(--space-6)}
}
.contact-info-list{display:flex;flex-direction:column;gap:var(--space-3)}
.contact-item{
  display:flex;
  gap:var(--space-2);
  align-items:flex-start;
}
.contact-item .icon-lg{
  color:var(--c-secondary-500);
  flex-shrink:0;
}
.contact-item h3{font-size:1.05rem;margin-bottom:2px}
.contact-item p{color:var(--c-neutral-600);font-size:var(--fs-small)}
.contact-form{
  background:var(--c-bg);
  border:1px solid var(--c-border);
  border-radius:var(--radius);
  padding:var(--space-4);
  box-shadow:0 8px 30px rgba(16,42,67,0.05);
}
.form-field{margin-bottom:var(--space-3)}
.form-field label{
  display:block;
  font-size:var(--fs-small);
  font-weight:var(--fw-bold);
  color:var(--c-heading);
  margin-bottom:var(--space-1);
}
.form-field input,
.form-field textarea{
  width:100%;
  padding:var(--space-2);
  border:1px solid var(--c-border);
  border-radius:var(--radius-sm);
  background:var(--c-bg);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.form-field input:focus,
.form-field textarea:focus{
  border-color:var(--c-secondary-500);
  box-shadow:0 0 0 3px rgba(91,138,114,0.12);
  outline:none;
}
.form-field textarea{resize:vertical;min-height:120px}
.form-note{font-size:var(--fs-small);color:var(--c-neutral-500);margin-top:var(--space-2)}
.form-status{
  padding:var(--space-2) var(--space-3);
  border-radius:var(--radius-sm);
  font-size:var(--fs-small);
  margin-top:var(--space-3);
  display:none;
}
.form-status.is-visible{display:block}
.form-status.is-success{background:var(--c-secondary-50);color:var(--c-secondary-700);border:1px solid var(--c-secondary-100)}
.map-embed{
  margin-top:var(--space-4);
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--c-border);
}
.map-embed iframe{width:100%;height:280px;border:0;display:block}
