:root{
  --dr-primary:#1b7f7a;
  --dr-primary-2:#14605c;
  --dr-dark:#0f2a2a;
  --dr-soft:#f4fbfa;
  --dr-warm:#fff7ed;
  --dr-border:rgba(15,42,42,.12);
  --dr-shadow:0 12px 30px rgba(15,42,42,.10);
}

html{font-size:16px;scroll-behavior:smooth;}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,Helvetica,sans-serif;font-size:1rem;color:#0e1e1e;}

a{color:var(--dr-primary);text-decoration:none;}
a:hover{color:var(--dr-primary-2);}

/* Layout helpers */
.section-pad{padding:4rem 0;}
.section-kicker{color:var(--dr-primary-2);text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:.85rem;}
.section-title{letter-spacing:.2px;}

/* Navbar */
.navbar{border-bottom:1px solid var(--dr-border);}
.navbar-brand span{font-weight:800;letter-spacing:.3px;}
.nav-link{font-weight:600;}

/* Hero */
.hero{
  background:
    linear-gradient(90deg, rgba(15,42,42,.92) 0%, rgba(15,42,42,.70) 55%, rgba(15,42,42,.55) 100%),
    url('../img/hero.jpg') center/cover no-repeat;
  color:#fff;
}
.hero .badge{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);}
.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);}

/* Cards */
.card{border:1px solid var(--dr-border);box-shadow:none;}
.card.soft{background:var(--dr-soft);}
.card.hover-lift{transition:transform .2s ease, box-shadow .2s ease;}
.card.hover-lift:hover{transform:translateY(-3px);box-shadow:var(--dr-shadow);}

/* Metrics */
.metric{padding:1.25rem;border:1px solid var(--dr-border);border-radius:1rem;background:#fff;}
.metric .num{font-weight:800;font-size:1.5rem;color:var(--dr-dark);}
.metric .lbl{color:rgba(14,30,30,.70);}

/* Image tiles */
.img-tile{border-radius:1rem;overflow:hidden;border:1px solid var(--dr-border);}
.img-tile img{width:100%;height:220px;object-fit:cover;display:block;}

/* Buttons */
.btn-dr{background:var(--dr-primary);border-color:var(--dr-primary);color:#fff;}
.btn-dr:hover{background:var(--dr-primary-2);border-color:var(--dr-primary-2);color:#fff;}
.btn-outline-dr{border-color:var(--dr-primary);color:var(--dr-primary);}
.btn-outline-dr:hover{background:var(--dr-primary);color:#fff;}

/* Forms */
.form-control,.form-select{border-color:var(--dr-border);}
.form-control:focus,.form-select:focus{border-color:rgba(27,127,122,.6);box-shadow:0 0 0 .2rem rgba(27,127,122,.18);}

/* Footer */
footer{border-top:1px solid var(--dr-border);}
.footer-mini{color:rgba(14,30,30,.72);}

/* Cookie banner (only on home) */
.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:1080;}
.cookie-inner{background:#fff;border:1px solid var(--dr-border);border-radius:1rem;box-shadow:var(--dr-shadow);padding:1rem 1.1rem;}

/* Custom modal (no Bootstrap JS required) */
.dr-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:1090;background:rgba(14,30,30,.55);padding:1rem;}
.dr-modal.show{display:flex;}
.dr-modal-dialog{max-width:560px;width:100%;}
.dr-modal-content{background:#fff;border-radius:1rem;box-shadow:var(--dr-shadow);border:1px solid var(--dr-border);overflow:hidden;}
.dr-modal-header{padding:1rem 1.25rem;border-bottom:1px solid var(--dr-border);display:flex;align-items:center;justify-content:space-between;}
.dr-modal-body{padding:1.25rem;}
.dr-modal-footer{padding:1rem 1.25rem;border-top:1px solid var(--dr-border);display:flex;gap:.5rem;justify-content:flex-end;}

/* Simple collapse for navbar without Bootstrap JS */
@media (max-width: 991.98px){
  .navbar-collapse{display:none;}
  .navbar-collapse.show{display:block;}
}

/* Accessibility */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;z-index:2000;background:#fff;padding:.5rem .75rem;border-radius:.75rem;border:1px solid var(--dr-border);}
