/* Krzylopuda — Squarespace 7.1 style */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Onest:wght@300;400;500;600;700&display=swap');

:root{
  --emerald:#047857;
  --emerald-dark:#065f46;
  --gold:#D97706;
  --gold-light:#F59E0B;
  --navy:#0F172A;
  --cream:#FAFAF9;
  --gray-50:#F8FAFC;
  --gray-100:#F1F5F9;
  --gray-200:#E2E8F0;
  --gray-300:#CBD5E1;
  --gray-400:#94A3B8;
  --gray-500:#64748B;
  --gray-600:#475569;
  --gray-700:#334155;
  --gray-800:#1E293B;
  --serif:'Instrument Serif', Georgia, serif;
  --sans:'Onest', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --max:1240px;
  --radius:2px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--sans);
  font-weight:400;
  line-height:1.65;
  color:var(--navy);
  background:var(--cream);
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6{
  font-family:var(--serif);
  font-weight:400;
  color:var(--navy);
  line-height:1.15;
  letter-spacing:-0.01em;
  margin:0 0 .6em 0;
}
h1{font-size:clamp(2.4rem,5.6vw,4.6rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem)}
h3{font-size:clamp(1.35rem,2.2vw,1.8rem)}
h4{font-size:1.2rem}
p{margin:0 0 1.1em 0}
a{color:var(--emerald);text-decoration:none;transition:color .2s}
a:hover{color:var(--gold)}
img{max-width:100%;display:block;height:auto}

/* Squarespace-like layout primitives */
.sqs-layout{width:100%}
.sqs-row{display:flex;flex-wrap:wrap;margin:0 -18px}
.sqs-row > [class^="sqs-col"]{padding:0 18px;flex:1 1 auto}
.sqs-col-12{flex:0 0 100%;max-width:100%}
.sqs-col-8{flex:0 0 66.6667%;max-width:66.6667%}
.sqs-col-6{flex:0 0 50%;max-width:50%}
.sqs-col-4{flex:0 0 33.3333%;max-width:33.3333%}
.sqs-col-3{flex:0 0 25%;max-width:25%}
.sqs-block{padding:17px 0}
.sqs-block-content{width:100%}

/* Squarespace-style image block */
.sqs-block-image .image-block-outer-wrapper{
  margin:0;
  position:relative;
  overflow:hidden;
  border-radius:2px;
}
.sqs-block-image .image-block-outer-wrapper img.thumb-image{
  width:100%;
  height:340px;
  object-fit:cover;
  display:block;
}
.sqs-block-image .image-block-outer-wrapper .image-caption{
  font-size:13px;
  color:var(--gray-500);
  font-style:italic;
  margin-top:10px;
  line-height:1.5;
  text-align:left;
}
.sqs-block-image--tall .image-block-outer-wrapper img.thumb-image{height:400px}
.sqs-block-image--short .image-block-outer-wrapper img.thumb-image{height:300px}

.Page-content,.Index-page-content{
  max-width:var(--max);
  margin:0 auto;
  padding:0 28px;
}

/* Header */
.Header{
  background:#fff;
  border-bottom:1px solid var(--gray-200);
  position:sticky;top:0;z-index:500;
}
.Header-inner{
  max-width:var(--max);
  margin:0 auto;
  padding:22px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.Header-branding-logo{display:block}
.Header-branding-logo-img{height:48px;width:auto}
.Header-nav{display:flex;align-items:center}
.Header-nav-inner{
  display:flex;
  align-items:center;
  gap:34px;
  list-style:none;
  margin:0;
  padding:0;
}
.Header-nav-item{
  font-family:var(--sans);
  font-size:14px;
  font-weight:500;
  letter-spacing:.02em;
  color:var(--navy);
  text-transform:none;
  position:relative;
  padding:6px 0;
}
.Header-nav-item:hover{color:var(--emerald)}
.Header-nav-item.active{color:var(--emerald)}
.Header-nav-item.active::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-2px;
  height:2px;
  background:var(--gold);
}
.Header-burger{
  display:none;
  background:none;
  border:0;
  width:32px;height:32px;
  cursor:pointer;
  padding:0;
}
.Header-burger span{
  display:block;
  width:24px;height:2px;
  background:var(--navy);
  margin:5px auto;
  transition:.3s;
}

/* Intro / hero */
.Intro{
  padding:84px 0 64px;
  border-bottom:1px solid var(--gray-200);
  background:#fff;
}
.Intro-content{
  max-width:860px;
  margin:0 auto;
  padding:0 28px;
  text-align:center;
}
.Intro .eyebrow{
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:22px;
}
.Intro h1{
  margin-bottom:22px;
  font-style:italic;
}
.Intro-dek{
  font-family:var(--serif);
  font-size:clamp(1.15rem,1.8vw,1.45rem);
  color:var(--gray-600);
  line-height:1.5;
  margin-bottom:28px;
}
.Intro-byline{
  font-family:var(--sans);
  font-size:13px;
  color:var(--gray-500);
  letter-spacing:.03em;
}
.Intro-byline strong{color:var(--navy);font-weight:600}

/* Page hero (smaller) */
.Page-hero{
  padding:72px 0 48px;
  background:#fff;
  border-bottom:1px solid var(--gray-200);
  text-align:center;
}
.Page-hero .eyebrow{
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:18px;
}
.Page-hero h1{font-style:italic;margin-bottom:16px;max-width:820px;margin-left:auto;margin-right:auto}
.Page-hero p{max-width:680px;margin-left:auto;margin-right:auto;font-family:var(--serif);font-size:1.2rem;color:var(--gray-600)}

/* Index sections */
.Index-page{padding:72px 0;border-bottom:1px solid var(--gray-200)}
.Index-page.alt{background:#fff}
.Index-page-title{
  font-style:italic;
  margin-bottom:12px;
}
.Index-page-subtitle{
  font-family:var(--sans);
  font-size:13px;
  font-weight:600;
  letter-spacing:.22em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:18px;
}

/* Article body */
.BlogItem-body,.Article-body{
  font-size:17px;
  line-height:1.75;
  color:var(--gray-700);
  max-width:740px;
  margin:0 auto;
}
.BlogItem-body p,.Article-body p{margin-bottom:1.4em}
.BlogItem-body h2,.Article-body h2{margin-top:1.6em;font-style:italic}
.BlogItem-body h3,.Article-body h3{margin-top:1.4em}
.BlogItem-body blockquote,.Article-body blockquote{
  border-left:3px solid var(--gold);
  padding:8px 0 8px 28px;
  margin:30px 0;
  font-family:var(--serif);
  font-style:italic;
  font-size:1.4rem;
  color:var(--navy);
  line-height:1.4;
}
.BlogItem-meta{
  font-family:var(--sans);
  font-size:13px;
  color:var(--gray-500);
  letter-spacing:.03em;
  margin-bottom:36px;
  text-align:center;
}
.BlogItem-meta span{margin:0 10px}

/* Cards / list items */
.BlogList-wrapper{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
}
.BlogList-item{
  background:#fff;
  border:1px solid var(--gray-200);
  transition:transform .25s,box-shadow .25s;
}
.BlogList-item:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 40px -12px rgba(15,23,42,.12);
}
.BlogList-item-image{
  aspect-ratio:16/10;
  overflow:hidden;
  background:var(--gray-100);
}
.BlogList-item-image img{
  width:100%;height:100%;
  object-fit:cover;
}
.BlogList-item-body{padding:26px 28px 30px}
.BlogList-item-category{
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.2em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:10px;
}
.BlogList-item-title{
  font-size:1.4rem;
  font-style:italic;
  margin-bottom:10px;
  line-height:1.25;
}
.BlogList-item-excerpt{
  font-size:15px;
  color:var(--gray-600);
  line-height:1.55;
  margin-bottom:16px;
}
.BlogList-item-more{
  font-family:var(--sans);
  font-size:13px;
  font-weight:600;
  letter-spacing:.06em;
  color:var(--emerald);
  text-transform:uppercase;
}

/* Promo grid (bank offers) */
.Promo-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px;
}
.Promo-card{
  background:#fff;
  border:1px solid var(--gray-200);
  padding:32px 30px;
  border-top:3px solid var(--emerald);
}
.Promo-card.gold{border-top-color:var(--gold)}
.Promo-card-eyebrow{
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.22em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:10px;
}
.Promo-card h3{font-style:italic;margin-bottom:12px;font-size:1.5rem}
.Promo-card p{font-size:15px;color:var(--gray-600);margin-bottom:16px}
.Promo-card ul{margin:0;padding-left:20px;color:var(--gray-700);font-size:15px}
.Promo-card ul li{margin-bottom:6px}

/* Callout / disclaimer */
.Callout{
  background:#FFFBEB;
  border-left:3px solid var(--gold);
  padding:24px 28px;
  margin:36px auto;
  max-width:740px;
  font-size:15px;
  color:var(--gray-700);
  line-height:1.6;
}
.Callout strong{color:var(--navy)}
.Callout.navy{
  background:var(--navy);
  border-left-color:var(--gold);
  color:#E2E8F0;
}
.Callout.navy strong{color:#fff}

/* Stat row */
.Stat-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:32px;
  margin:40px 0;
}
.Stat{
  text-align:center;
  padding:24px 12px;
  border-top:1px solid var(--gray-200);
}
.Stat-number{
  font-family:var(--serif);
  font-size:3rem;
  color:var(--emerald);
  line-height:1;
  display:block;
  margin-bottom:10px;
  font-style:italic;
}
.Stat-label{
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.14em;
  color:var(--gray-500);
  text-transform:uppercase;
}

/* Team */
.Team-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
  margin-top:40px;
}
.Team-member{text-align:center}
.Team-member-photo{
  width:180px;height:180px;
  border-radius:50%;
  overflow:hidden;
  margin:0 auto 18px;
  background:var(--gray-100);
}
.Team-member-photo img{width:100%;height:100%;object-fit:cover}
.Team-member-name{
  font-family:var(--serif);
  font-size:1.35rem;
  margin-bottom:4px;
  font-style:italic;
}
.Team-member-role{
  font-family:var(--sans);
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:10px;
}
.Team-member-bio{font-size:14px;color:var(--gray-600);line-height:1.55}

/* Contact */
.Contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
  margin-top:40px;
}
.Contact-info dt{
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.2em;
  color:var(--gold);
  text-transform:uppercase;
  margin-top:20px;
  margin-bottom:6px;
}
.Contact-info dd{
  margin:0;
  font-size:16px;
  color:var(--navy);
  line-height:1.55;
}
.Contact-branches{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  margin-top:50px;
  padding-top:50px;
  border-top:1px solid var(--gray-200);
}
.Contact-branch h4{
  font-family:var(--serif);
  font-size:1.3rem;
  font-style:italic;
  margin-bottom:10px;
}
.Contact-branch p{font-size:14px;color:var(--gray-600);line-height:1.5}

.Map-wrap{
  margin-top:40px;
  border:1px solid var(--gray-200);
}
.Map-wrap iframe{display:block;width:100%;height:420px;border:0}

/* Table */
.Table-offers{
  width:100%;
  border-collapse:collapse;
  margin:30px 0;
  font-size:15px;
}
.Table-offers th,.Table-offers td{
  padding:14px 18px;
  text-align:left;
  border-bottom:1px solid var(--gray-200);
}
.Table-offers th{
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gray-500);
  background:var(--gray-50);
}
.Table-offers td{color:var(--gray-700)}
.Table-offers tr:hover td{background:var(--gray-50)}

/* Footer */
.Footer{
  background:var(--navy);
  color:#CBD5E1;
  padding:72px 0 30px;
  margin-top:0;
}
.Footer-inner{
  max-width:var(--max);
  margin:0 auto;
  padding:0 28px;
}
.Footer-blocks{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:48px;
  padding-bottom:48px;
  border-bottom:1px solid rgba(203,213,225,.12);
}
.Footer-block h4{
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.22em;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:18px;
}
.Footer-block p,.Footer-block li,.Footer-block a{
  font-size:14px;
  color:#CBD5E1;
  line-height:1.7;
}
.Footer-block a:hover{color:#fff}
.Footer-nav{list-style:none;padding:0;margin:0}
.Footer-nav li{margin-bottom:8px}
.Footer-brand{
  font-family:var(--serif);
  font-size:1.8rem;
  font-style:italic;
  color:#fff;
  margin-bottom:14px;
}
.Footer-bottom{
  padding-top:28px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:12px;
  color:var(--gray-400);
  letter-spacing:.03em;
  flex-wrap:wrap;
  gap:16px;
}
.Footer-bottom a{color:var(--gray-400)}
.Footer-bottom a:hover{color:#fff}

/* Policy page */
.Policy-body{
  max-width:760px;
  margin:0 auto;
  font-size:16px;
  line-height:1.75;
  color:var(--gray-700);
}
.Policy-body h2{font-style:italic;margin-top:2em}
.Policy-body h3{margin-top:1.6em}
.Policy-body ul,.Policy-body ol{padding-left:24px}

/* Responsive */
@media (max-width: 900px){
  .sqs-row{margin:0 -12px}
  .sqs-row > [class^="sqs-col"]{padding:0 12px}
  .sqs-col-8,.sqs-col-6,.sqs-col-4,.sqs-col-3{flex:0 0 100%;max-width:100%;margin-bottom:20px}
  .BlogList-wrapper,.Team-grid,.Contact-branches{grid-template-columns:1fr;gap:24px}
  .Promo-grid{grid-template-columns:1fr}
  .Stat-row{grid-template-columns:repeat(2,1fr)}
  .Contact-grid{grid-template-columns:1fr}
  .Footer-blocks{grid-template-columns:1fr 1fr;gap:36px}
  .Header-nav{
    position:fixed;
    top:0;right:-100%;
    width:80%;max-width:340px;
    height:100vh;
    background:#fff;
    flex-direction:column;
    padding:90px 36px 40px;
    transition:right .35s;
    box-shadow:-10px 0 40px rgba(15,23,42,.18);
  }
  .Header-nav.open{right:0}
  .Header-nav-inner{flex-direction:column;align-items:flex-start;gap:20px;width:100%}
  .Header-burger{display:block;z-index:600;position:relative}
  .Header-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .Header-burger.open span:nth-child(2){opacity:0}
  .Header-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .Intro{padding:60px 0 44px}
  .Index-page{padding:52px 0}
  .Footer-bottom{flex-direction:column;text-align:center}
}
@media (max-width:560px){
  .Footer-blocks{grid-template-columns:1fr}
  .Stat-row{grid-template-columns:1fr 1fr;gap:16px}
}
