@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600&display=swap');
:root{--g:#082d27;--d:#031916;--c:#b77047;--cr:#f1eadf;--s:#d8c7b1;--p:#f8f4ed;--t:#17312d;--m:1240px}
*{box-sizing:border-box}body{margin:0;background:var(--cr);color:var(--t);font-family:Inter,sans-serif;line-height:1.68}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--m),calc(100% - 48px));margin:auto}.header{position:sticky;top:0;z-index:99;background:linear-gradient(105deg,#f8f3ea,#ede2d4 55%,#dfcfbb);box-shadow:0 6px 22px #082d2712}.headerin{min-height:104px;padding:0 26px;display:flex;align-items:center}.brand{width:205px;flex:0 0 205px;margin-right:60px}.brand img{max-height:82px;width:auto}.nav{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:18px}.navlist{display:flex;gap:18px;list-style:none;margin:0;padding:0}.navlist a{font-size:13px;font-weight:700}.donate,.btn{background:var(--c);color:#fff;padding:13px 22px;border-radius:999px;font-weight:800}.toggle{display:none;border:0;background:none;margin-left:auto}.toggle span{display:block;width:25px;height:2px;background:var(--g);margin:6px}.hero{min-height:690px;background:radial-gradient(circle at 82% 18%,#ffffff45,transparent 30%),linear-gradient(112deg,#e8ddce,#cdb99f 48%,#173f36)}.herogrid{min-height:690px;display:grid;align-items:center}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--c)}h1,h2,.cards h3,.projects h3,.storygrid h3,.bank h3{font-family:'Playfair Display',serif;line-height:1.03;letter-spacing:-.03em;font-weight:500}.hero h1{font-size:clamp(58px,6vw,92px);max-width:790px;margin:15px 0;color:var(--g)}.hero h1 em{font-style:normal;color:var(--c)}.lead{font-size:20px;max-width:650px}.buttons{display:flex;gap:15px;margin-top:30px}.ghost{background:transparent;border:1.5px solid var(--g);color:var(--g)}.light{background:var(--cr);color:var(--g)}.values{background:linear-gradient(110deg,#07342c,#041d19);color:#fff;padding:38px 0}.valuegrid{display:grid;grid-template-columns:repeat(5,1fr)}.valuegrid div{text-align:center;padding:0 20px;border-right:1px solid #ffffff22}.valuegrid h3{margin:0;font-size:22px}.valuegrid p{font-size:13px;color:#ffffffb5}.section{padding:105px 0}.section h2{font-size:clamp(42px,5vw,68px)}.split{display:grid;grid-template-columns:1fr 1fr;gap:82px}.prose p,.foundergrid p{font-size:18px}.prose blockquote{border-left:3px solid var(--c);padding-left:20px;font-family:'Playfair Display';font-size:24px}.sand{background:var(--s)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards a{background:#f8f4edcc;padding:32px;min-height:210px}.cards a:hover{transform:translateY(-4px);box-shadow:0 16px 35px #082d2720}.cards h3,.projects h3,.storygrid h3{font-size:29px;margin:8px 0}.cards b,.projects b{color:var(--c)}.founder{background:#e7dccd}.foundergrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.portrait{overflow:hidden;box-shadow:0 18px 45px #082d2722}.dark{background:var(--g);color:#fff}.dark h2{color:#fff}.projects{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#ffffff22}.projects a{padding:34px 24px;background:var(--g);min-height:250px}.projects p{color:#ffffffb5}.stories{background:#c5b39b}.storygrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.storygrid a{background:var(--p);padding:32px}.support{background:#eee4d6}.bank{background:var(--g);color:#fff;padding:38px}.link{color:var(--c);font-weight:800}.cta{text-align:center;background:linear-gradient(120deg,#082d27,#041a17);color:#fff;padding:95px 0}.cta h2{font-size:clamp(42px,5vw,68px)}.center{justify-content:center}.pagehero{padding:85px 0 70px;background:linear-gradient(112deg,#e6dac8,#c7b197)}.pagehero h1{font-size:clamp(48px,6vw,80px);max-width:1050px}.content{max-width:920px}.content p{font-size:18px}.content .big{font-size:23px}.content h2{font-size:42px;margin-top:45px}footer{background:#031814;color:#ffffffbf;padding:65px 0 22px}.foot{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:55px}.flogo{max-width:210px;max-height:150px}.copy{border-top:1px solid #ffffff22;margin-top:35px;padding-top:18px;font-size:12px}
@media(max-width:930px){.headerin{min-height:86px;padding:0 15px}.brand{width:165px;flex-basis:165px;margin:0}.brand img{max-height:64px}.toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f4eee5;padding:18px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.navlist{flex-direction:column}.split,.foundergrid{grid-template-columns:1fr}.cards,.projects{grid-template-columns:1fr 1fr}.valuegrid{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 28px)}.headerin{min-height:76px}.brand{width:132px;flex-basis:132px}.brand img{max-height:54px}.hero,.herogrid{min-height:auto}.herogrid{padding:58px 0}.hero h1{font-size:48px}.lead{font-size:17px}.buttons{display:grid}.btn{justify-content:center}.valuegrid,.cards,.projects,.storygrid,.foot{grid-template-columns:1fr}.valuegrid div{border-right:0;border-bottom:1px solid #ffffff22;padding:20px}.section{padding:70px 0}.section h2{font-size:41px}.pagehero{padding:62px 0}.pagehero h1{font-size:44px}.content h2{font-size:35px}}

/* 5.1 fixes requested by client */
.brand-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:.9;
  color:var(--g);
  white-space:nowrap;
}
.brand-text strong{
  font-family:'Playfair Display',serif;
  font-size:22px;
  letter-spacing:.03em;
  font-weight:600;
}
.brand-text small{
  font-family:'Playfair Display',serif;
  font-size:16px;
  letter-spacing:.06em;
  margin-top:8px;
}
.brand .custom-logo-link{
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.brand .custom-logo{
  max-height:82px;
  width:auto;
  background:transparent!important;
}
.footer-brand-text{
  display:flex;
  flex-direction:column;
  color:#fff;
  font-family:'Playfair Display',serif;
  line-height:1.05;
  margin-bottom:18px;
}
.footer-brand-text strong{font-size:26px;letter-spacing:.04em}
.footer-brand-text span{font-size:18px;letter-spacing:.08em}
.footer-logo-note{font-size:11px;opacity:.55;max-width:280px}

/* Main headline stays one uniform color */
.hero h1,
.hero h1 em{
  color:var(--g)!important;
}

/* Cards/tiles are true interactive links */
.cards a,
.projects a,
.storygrid a{
  cursor:pointer;
  position:relative;
}
.cards a:focus-visible,
.projects a:focus-visible,
.storygrid a:focus-visible{
  outline:3px solid var(--c);
  outline-offset:3px;
}

@media(max-width:600px){
  .brand-text strong{font-size:17px}
  .brand-text small{font-size:12px;margin-top:6px}
  .brand .custom-logo{max-height:54px}
}


/* 5.2 – logo size/alignment */
.headerin{
  padding-left:14px!important;
  padding-right:26px!important;
}
.brand{
  margin-left:0!important;
  justify-content:flex-start!important;
  align-items:center!important;
  max-width:190px!important;
  flex:0 0 190px!important;
  margin-right:54px!important;
}
.brand .custom-logo-link{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  width:100%!important;
}
.brand img,
.brand .custom-logo{
  width:auto!important;
  height:auto!important;
  max-width:185px!important;
  max-height:76px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

/* 5.2 – hero with dedicated customizable image */
.herogrid{
  grid-template-columns:1.06fr .94fr!important;
  gap:52px!important;
}
.hero-copy{max-width:720px}
.hero-image-slot{
  width:100%;
  min-height:430px;
  align-self:center;
  overflow:hidden;
  border-radius:2px;
  box-shadow:0 22px 55px rgba(8,45,39,.16);
  background:rgba(255,255,255,.12);
}
.hero-image-slot img{
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
}
.image-placeholder{
  min-height:430px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:30px;
  text-align:center;
  background:
    linear-gradient(135deg,rgba(255,255,255,.35),rgba(8,45,39,.14)),
    radial-gradient(circle at 25% 25%,rgba(183,112,71,.25),transparent 25%);
  color:var(--g);
}
.image-placeholder span{
  font-family:'Playfair Display',serif;
  font-size:30px;
}
.image-placeholder small{
  max-width:330px;
  margin-top:8px;
  opacity:.72;
}

/* 5.2 – photo cards for Komu pomáhame */
.help-photo-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:34px;
}
.help-photo-card{
  background:rgba(248,244,237,.9);
  border:1px solid rgba(8,45,39,.08);
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}
.help-photo-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 44px rgba(8,45,39,.14);
}
.help-photo{
  height:220px;
  overflow:hidden;
  background:#cdbba4;
}
.help-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.help-photo-card:hover .help-photo img{
  transform:scale(1.035);
}
.help-photo-copy{
  padding:26px 28px 30px;
}
.help-photo-copy span{
  color:var(--c);
  font-size:12px;
  font-weight:800;
  letter-spacing:.15em;
}
.help-photo-copy h3{
  font-family:'Playfair Display',serif;
  font-size:30px;
  margin:8px 0;
  color:var(--g);
}
.help-photo-copy b{color:var(--c)}

/* Decorative defaults shown until real images are uploaded in Customizer */
.help-photo-fallback{
  width:100%;height:100%;
  background-size:cover;
}
.help-photo-fallback.women{
  background:
    radial-gradient(circle at 72% 32%,rgba(255,255,255,.32),transparent 22%),
    linear-gradient(135deg,#b58f78,#e5cdb9 45%,#6f8375);
}
.help-photo-fallback.children{
  background:
    radial-gradient(circle at 28% 35%,rgba(255,255,255,.38),transparent 20%),
    linear-gradient(135deg,#d8b875,#eee0c1 48%,#81907a);
}
.help-photo-fallback.men{
  background:
    radial-gradient(circle at 70% 22%,rgba(255,255,255,.26),transparent 22%),
    linear-gradient(135deg,#6f807a,#c2ae93 48%,#465e57);
}
.help-photo-fallback.family{
  background:
    radial-gradient(circle at 35% 28%,rgba(255,255,255,.34),transparent 21%),
    linear-gradient(135deg,#aa876d,#d5b999 50%,#70816e);
}
.help-photo-fallback.seniors{
  background:
    radial-gradient(circle at 72% 28%,rgba(255,255,255,.32),transparent 22%),
    linear-gradient(135deg,#8f7b70,#d9c8b7 48%,#6f7c71);
}
.help-photo-fallback.animals{
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.34),transparent 21%),
    linear-gradient(135deg,#7a8e76,#d1b993 50%,#4b6557);
}

@media(max-width:960px){
  .brand{
    max-width:150px!important;
    flex-basis:150px!important;
    margin-right:0!important;
  }
  .brand img,.brand .custom-logo{
    max-width:145px!important;
    max-height:60px!important;
  }
  .herogrid{
    grid-template-columns:1fr!important;
  }
  .hero-image-slot{
    min-height:320px;
  }
  .hero-image-slot img,.image-placeholder{
    min-height:320px;
  }
  .help-photo-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:600px){
  .headerin{padding-left:10px!important;padding-right:12px!important}
  .brand{
    max-width:125px!important;
    flex-basis:125px!important;
  }
  .brand img,.brand .custom-logo{
    max-width:120px!important;
    max-height:50px!important;
  }
  .help-photo-grid{grid-template-columns:1fr}
  .help-photo{height:210px}
}

/* 6.0 complete staged build */
.headerin{padding-left:12px!important}
.brand{margin-left:0!important;max-width:190px!important;flex:0 0 190px!important;margin-right:48px!important}
.brand .custom-logo-link{display:flex!important;justify-content:flex-start!important;align-items:center!important;width:100%!important}
.brand img,.brand .custom-logo{max-width:180px!important;max-height:72px!important;width:auto!important;height:auto!important;object-fit:contain!important;object-position:left center!important;background:transparent!important}
.brand-text{display:flex;flex-direction:column;line-height:1;color:var(--g)}
.brand-text strong{font-family:'Playfair Display';font-size:22px;letter-spacing:.03em}.brand-text small{font-family:'Playfair Display';font-size:15px;margin-top:6px;letter-spacing:.08em}
.herogrid{grid-template-columns:1.05fr .95fr!important;gap:54px!important}.hero-photo{min-height:430px;overflow:hidden;box-shadow:0 20px 50px #082d2725}.hero-photo img{width:100%;height:430px;object-fit:cover}
.cc-photo-placeholder{width:100%;height:100%;min-height:220px;background:linear-gradient(135deg,#d6c2aa,#b7a188 48%,#6e8175);display:flex;align-items:center;justify-content:center;color:#ffffff99}.hero-photo .cc-photo-placeholder{min-height:430px}.cc-photo-placeholder span{font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.why-photo{margin-top:30px;height:260px;overflow:hidden}.why-photo img{width:100%;height:100%;object-fit:cover}.why-photo .cc-photo-placeholder{min-height:260px}
.helpgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.photocard{background:#f8f4ed;overflow:hidden;transition:.25s}.photocard:hover{transform:translateY(-5px);box-shadow:0 18px 45px #082d2720}.cardphoto{height:210px;overflow:hidden}.cardphoto img{width:100%;height:100%;object-fit:cover}.cardcopy{padding:26px}.cardcopy span,.cardcopy b{color:var(--c);font-weight:800}.cardcopy h3{font-family:'Playfair Display';font-size:30px;margin:8px 0}
.projectgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.projectgrid>a{background:#0a382f;overflow:hidden}.projectphoto{height:190px;overflow:hidden}.projectphoto img{width:100%;height:100%;object-fit:cover}.projectcopy{padding:26px}.projectcopy h3{font-family:'Playfair Display';font-size:27px;margin:0 0 8px}.projectcopy p{color:#ffffffb5}.projectcopy b,.lightlink{color:#d89a73}.lightlink{display:inline-block;margin-top:28px}
.storygrid b{color:var(--c)}.minigrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.minigrid>div{background:#e4d7c6;padding:24px}
.contactgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:55px}.contactbox{background:#e4d7c6;padding:34px}.postitem{border-bottom:1px solid #082d2720;padding-bottom:28px;margin-bottom:28px}
.footerbrand{display:flex;flex-direction:column;color:#fff;font-family:'Playfair Display';line-height:1}.footerbrand strong{font-size:25px}.footerbrand span{font-size:17px;letter-spacing:.08em;margin-top:7px}
@media(max-width:960px){.herogrid{grid-template-columns:1fr!important}.hero-photo{min-height:320px}.hero-photo img,.hero-photo .cc-photo-placeholder{height:320px;min-height:320px}.helpgrid,.projectgrid{grid-template-columns:1fr 1fr}.contactgrid{grid-template-columns:1fr}}
@media(max-width:600px){.brand{max-width:125px!important;flex-basis:125px!important;margin-right:0!important}.brand img,.brand .custom-logo{max-width:120px!important;max-height:50px!important}.brand-text strong{font-size:16px}.brand-text small{font-size:11px}.helpgrid,.projectgrid,.minigrid{grid-template-columns:1fr}.cardphoto{height:220px}}

/* 7.0 premium nonprofit refinements */
.fallback-logo{display:block;max-width:176px!important;max-height:78px!important;width:auto!important;height:auto!important;object-fit:contain;object-position:left center}
.pagelead{max-width:900px;font-size:20px;line-height:1.7;color:#ffffffc9;margin-top:22px}.pagehero{background:linear-gradient(120deg,#092e28,#163c34);color:#fff}.pagehero h1{max-width:1050px}.pillargrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:40px 0}.pillargrid>div{padding:30px;background:#f4eee5;border-top:3px solid #b87950}.pillargrid h3{font-family:'Playfair Display';font-size:27px;margin:0 0 12px}.trustbox{margin-top:48px;padding:42px;background:#0c332c;color:#fff}.trustbox h2{color:#fff}.trustbox p{color:#ffffffc9}.trustbox .btn.ghost{border-color:#ffffff66;color:#fff}.cta-inline{margin-top:48px;padding:40px;background:#e7d9c7}.bank.premium{margin-top:45px;padding:38px}.bankgrid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.content a:not(.btn){text-decoration-thickness:1px;text-underline-offset:3px}footer a{color:#fff}.projecthero{background:linear-gradient(120deg,#092e28,#183d35)}
@media(max-width:720px){.pillargrid,.bankgrid{grid-template-columns:1fr}.pagelead{font-size:18px}.trustbox,.cta-inline{padding:28px}.fallback-logo{max-width:116px!important;max-height:54px!important}}

/* 7.1 hard mobile fixes */
.contact-card{padding:clamp(24px,5vw,48px);background:#eadcc8;border-radius:28px}
.contact-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:26px}
.contact-actions .btn{margin:0!important;min-width:0;max-width:100%;box-sizing:border-box}
.bank-large{margin:34px 0}
@media(max-width:700px){
  .contact-actions{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;width:100%!important}
  .contact-actions .btn{display:flex!important;width:100%!important;min-height:56px!important;padding:14px 18px!important;line-height:1.25!important;white-space:normal!important;text-align:center!important;position:static!important;transform:none!important}
  .content .btn{max-width:100%!important;box-sizing:border-box!important}
  .contact-card{padding:24px!important}
}

/* 7.1.1 hero-only fix */
.hero .herogrid{
  grid-template-columns:1fr!important;
}
.hero .hero-copy{
  max-width:900px!important;
}

/* 7.1.2 VERIFIED – centrovanie a čitateľné členenie textov */
main,.pagehero,.section,.content,.hero-copy,.card,.storycopy,.partnerbox,.bank,.contact-card,
main h1,main h2,main h3,main h4,main p,main blockquote,
footer,.foot,.copy,.foot>div{text-align:center;}
.content>p,.content>blockquote,.hero-copy>p,.card p,.storycopy p,.partnerbox p,.bank p,.contact-card p{
max-width:860px;margin-left:auto;margin-right:auto;}
.content>p+p,.content>p+h2,.content>p+h3,.content>blockquote+p,.content>h2+p,.content>h3+p{margin-top:1.15em;}
.content h2,.content h3{max-width:920px;margin-left:auto;margin-right:auto;}
.content ul,.content ol{width:fit-content;max-width:860px;margin-left:auto;margin-right:auto;padding-left:1.35em;}
.content li{text-align:left;margin-bottom:.55em;}
.buttons,.contact-actions,.cta-actions{justify-content:center!important;}
.footerbrand{justify-content:center;}
.bank,.contact-card,.foot{overflow-wrap:anywhere;}
@media(max-width:760px){
main,.pagehero,.section,.content,.hero-copy,.card,.storycopy,.partnerbox,.bank,.contact-card,
main h1,main h2,main h3,main p,main blockquote,footer,.foot,.copy{text-align:center!important;}
.content ul,.content ol{width:auto;max-width:100%;}
.content li{text-align:left!important;}
}


/* 7.1.3 – bankové údaje: IBAN a číslo účtu vždy v jednom riadku */
.bank-line{
  display:inline-block;
  white-space:nowrap;
  max-width:100%;
  font-size:clamp(.76rem,2.6vw,1rem);
  letter-spacing:-.01em;
}
@media(max-width:420px){
  .bank-line{font-size:.74rem;}
}

/* 7.1.4 – iba mobilná veľkosť písma IBAN; ostatné prvky bez zmeny */
.iban-mobile{white-space:nowrap;}
@media(max-width:420px){
  .iban-mobile{font-size:13px;letter-spacing:-.02em;white-space:nowrap;}
}
