/* ===== Version 3: Fresh & Modern — white, sage green, soft sky blue ===== */
:root{
  --blue:#0A3D62; --blue-deep:#072B46;
  --cgold:#D6B272; --cgold-hover:#C9A15C; --cgold-deep:#94712F;
  --sage:var(--blue); --sage-hover:var(--blue-deep); --sage-soft:#F7ECD8;
  --sky:#FBF3E4; --sky-line:#ECDDBF;
  --ink:#0B2236; --text:#1E2A33; --muted:#5E6873;
  --paper:#FFFFFF; --tint:#FDF8EF; --line:#EFE4CF;
  --gold:var(--cgold); --gold-hover:var(--cgold-hover);
  --navy:var(--blue); --navy-ink:var(--ink);
  --font-display:'General Sans','Satoshi',sans-serif;
  --radius:18px; --pad:clamp(4.5rem,9vw,8rem);
}
body{background:#fff;color:var(--text)}
h1,h2{font-weight:600;letter-spacing:-.03em;color:var(--ink)}
h3{font-family:var(--font-display);font-weight:600}
.eyebrow{display:inline-block;background:var(--sage-soft);color:var(--sage);padding:.45rem .85rem;border-radius:999px;letter-spacing:.06em;font-weight:600;text-transform:none;font-size:var(--text-sm)}
.eyebrow--blue{color:var(--sage)}
:focus-visible{outline-color:var(--sage)}

.btn{border-radius:999px}
.btn--gold{background:var(--sage);color:#fff}
.btn--gold:hover{background:var(--sage-hover)}
.btn--ghost{border-color:var(--line);color:var(--ink);background:#fff}
.btn--ghost:hover{border-color:var(--sage);color:var(--sage)}

/* nav */
.nav{background:rgba(255,255,255,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink);border-bottom:1px solid var(--line)}
.brand{color:var(--ink);font-family:var(--font-display);font-weight:600}
.brand span{color:var(--sage);font-weight:500}
.nav__links a{color:var(--muted)}
.nav__links a:hover{color:var(--sage)}
.lang{border-color:var(--line);border-radius:999px}
.lang button{color:var(--muted)}
.lang button[aria-pressed="true"]{background:var(--sage-soft);color:var(--sage)}

/* hero: light & airy */
.hero{background:linear-gradient(180deg,var(--sky) 0%,#fff 100%);color:var(--ink);padding:clamp(3.5rem,7vw,6.5rem) 0 clamp(3.5rem,7vw,6rem)}
.hero h1{font-size:clamp(2.6rem,1.5rem + 4vw,4.75rem);line-height:1.04}
.lead{color:var(--muted)}
.hero__facts{border-top:1px solid var(--sky-line)}
.hero__facts strong{color:var(--ink)}
.hero__facts span{color:var(--muted)}
.hero__media img{border-radius:28px;aspect-ratio:4/4.2;box-shadow:0 30px 60px -35px rgba(22,48,43,.35)}
.hero__media::before{inset:auto -18px -18px auto;width:55%;height:55%;background:var(--sage-soft);border-radius:28px}

/* services */
.cards{gap:1.25rem}
.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.card:hover{border-color:var(--sky-line);box-shadow:0 18px 40px -28px rgba(22,48,43,.35);transform:translateY(-2px)}
.card{transition:transform .25s,box-shadow .25s,border-color .25s}
.card img{border-radius:calc(var(--radius) - 6px);margin:6px;width:calc(100% - 12px)}
.num{color:var(--sage)}
.num::after{background:var(--sky-line)}
.card h3{color:var(--ink)}
.card--wide{background:var(--sky);border-color:var(--sky-line);color:var(--ink)}
.card--wide h3{color:var(--ink);font-weight:600}
.card--wide p{color:var(--muted)}
.card--wide .num{color:var(--sage)}
.link{color:var(--sage)}

/* bleed */
.bleed{padding:0 clamp(1.25rem,4vw,2.5rem)}
.bleed img{border-radius:28px;max-width:1200px;margin:0 auto}
.bleed__caption{bottom:1.5rem}
.bleed__caption p{background:rgba(255,255,255,.94);color:var(--ink);border-left:0;border-radius:14px;box-shadow:0 10px 30px -18px rgba(0,0,0,.4)}

/* steps */
.section--tint{background:#fff}
.steps{gap:1.25rem}
.steps li{border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem;background:var(--tint)}
.steps span{color:#fff;-webkit-text-stroke:0;background:var(--sage);width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font:600 1rem/1 var(--font-display)}

/* about */
.about__mark{background:var(--sky);color:var(--sage);border-radius:28px;font-weight:600}
.about__mark::after{border-color:var(--sage-soft);border-radius:28px}

/* contact: light */
.contact{background:var(--sage-soft);color:var(--ink)}
.contact .eyebrow{background:#fff}
.contact h2{color:var(--ink)}
.contact .lead{color:var(--muted)}
.contact__list li{border-bottom-color:rgba(22,48,43,.12)}
.contact__list span{color:var(--muted)}
.contact__list a,.contact__list strong{color:var(--ink)}
.contact__list a:hover{color:var(--sage)}
.form{border-radius:24px;box-shadow:0 24px 50px -36px rgba(22,48,43,.4)}
.field label{color:var(--ink)}
.field input,.field select,.field textarea{border-radius:12px;background:var(--tint)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(79,138,115,.18)}

/* footer */
.footer{background:#fff;color:var(--muted);border-top:1px solid var(--line)}
.footer .brand{color:var(--ink)}
.footer a:hover{color:var(--sage)}

@media (max-width:640px){
  .bleed{padding:0}
  .bleed img{border-radius:0}
  .bleed__caption p{border-radius:0;border-top:4px solid var(--sage)}
  .steps li{padding:1.4rem}
}

/* warm creamy-gold accents */
.eyebrow,.eyebrow--blue{color:var(--cgold-deep)}
.btn--gold{background:var(--cgold);color:var(--ink)}
.btn--gold:hover{background:var(--cgold-hover)}
.nav .btn--gold{background:var(--blue);color:#fff}
.nav .btn--gold:hover{background:var(--blue-deep)}
.brand span{color:var(--cgold-deep)}
.num,.card--wide .num{color:var(--cgold-deep)}
.link{color:var(--blue)}
.steps span{background:var(--blue);color:var(--cgold)}
.about__mark{color:var(--blue);border:1px solid var(--sky-line)}
.hero__media::before{background:var(--cgold);opacity:.35}
.card--wide{background:var(--blue);border-color:var(--blue)}
.card--wide h3{color:#fff}.card--wide p{color:#C9D7E3}
.card--wide .num{color:var(--cgold)}.card--wide .link{color:var(--cgold)}
.lang button[aria-pressed="true"]{background:var(--blue);color:#fff}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px rgba(10,61,98,.15)}
@media (max-width:640px){.bleed__caption p{border-top-color:var(--cgold)}}
.card--wide img{width:calc(50% - 12px);flex:0 0 auto}
@media (max-width:640px){.card--wide img{width:calc(100% - 12px)}}
