/*
Theme Name: Pflegeheim-Atlas
Theme URI: https://pflegeheim-atlas.de
Description: Child-Theme für Pflegeheim-Atlas – Pflegeplatz-Verzeichnis & Beratung (Modell A Place for Mom).
Template: generatepress
Version: 1.0.2
*/

:root{
  --brand:#1f7a76;          /* Petrol/Teal – Vertrauen, Pflege */
  --brand-dark:#155a57;
  --brand-soft:#e7f1f0;
  --accent:#ff6f59;         /* warme Koralle – Menschlichkeit, CTA */
  --accent-dark:#e85a44;
  --sand:#f6f2ea;           /* warmes Off-White */
  --ink:#22313a;
  --muted:#5c6b73;
  --line:#e6e0d6;
  --card:#ffffff;
  --radius:18px;
  --shadow:0 10px 30px rgba(34,49,58,.08);
  --shadow-lg:0 18px 50px rgba(34,49,58,.14);
  --wrap:1140px;
}

body.pfa{font-family:'Nunito Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:#fff;line-height:1.6;}
.pfa h1,.pfa h2,.pfa h3{font-family:'Nunito',sans-serif;line-height:1.18;color:var(--ink);font-weight:800;}
.pfa .wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px;}
.pfa section{padding:72px 0;}
.pfa .eyebrow{display:inline-block;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;color:var(--brand);background:var(--brand-soft);padding:6px 14px;border-radius:999px;margin-bottom:16px;}
.pfa .btn{display:inline-block;background:var(--accent);color:#fff;font-weight:800;padding:16px 30px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;font-size:1.02rem;transition:.2s;box-shadow:0 8px 20px rgba(255,111,89,.32);}
.pfa .btn:hover{background:var(--accent-dark);transform:translateY(-2px);}
.pfa .btn-ghost{background:#fff;color:var(--brand-dark);box-shadow:none;border:2px solid var(--brand);}
.pfa .btn-ghost:hover{background:var(--brand-soft);}

/* HERO */
.pfa-hero{background:linear-gradient(135deg,#1f7a76 0%,#155a57 60%,#103f3d 100%);color:#fff;position:relative;overflow:hidden;}
.pfa-hero:after{content:"";position:absolute;right:-160px;top:-160px;width:520px;height:520px;background:radial-gradient(circle,rgba(255,111,89,.30),transparent 65%);}
.pfa-hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding-top:84px;padding-bottom:84px;}
.pfa-hero h1{color:#fff;font-size:2.9rem;margin:0 0 18px;}
.pfa-hero p.lead{font-size:1.22rem;color:#dff0ee;margin:0 0 28px;max-width:560px;}
.pfa-search{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:10px;display:flex;gap:8px;}
.pfa-search input{flex:1;border:0;padding:16px 18px;font-size:1.05rem;border-radius:12px;color:var(--ink);}
.pfa-search input:focus{outline:2px solid var(--brand-soft);}
.pfa-hero .trust{margin-top:18px;color:#cfe7e4;font-weight:700;font-size:.98rem;}
.pfa-hero .trust span{color:#fff;}
.pfa-hero-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:28px;backdrop-filter:blur(4px);}
.pfa-hero-card h3{color:#fff;margin:0 0 16px;font-size:1.15rem;}
.pfa-hero-card ul{list-style:none;margin:0;padding:0;}
.pfa-hero-card li{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;color:#eafaf8;font-weight:600;}
.pfa-hero-card li svg{flex:none;margin-top:2px;}

/* TRUST BAR */
.pfa-trustbar{background:var(--sand);border-bottom:1px solid var(--line);}
.pfa-trustbar .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;padding:26px 22px;}
.pfa-trustbar .item{display:flex;gap:12px;align-items:center;font-weight:700;color:var(--ink);}
.pfa-trustbar .item b{color:var(--brand-dark);}

/* CARE TYPES */
.pfa-care{background:#fff;}
.pfa-section-head{text-align:center;max-width:680px;margin:0 auto 44px;}
.pfa-section-head h2{font-size:2.1rem;margin:0 0 14px;}
.pfa-section-head p{color:var(--muted);font-size:1.1rem;margin:0;}
.pfa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.pfa-tile{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;text-decoration:none;color:var(--ink);transition:.2s;}
.pfa-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--brand-soft);}
.pfa-tile .ic{width:54px;height:54px;border-radius:14px;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.pfa-tile h3{font-size:1.18rem;margin:0 0 8px;}
.pfa-tile p{color:var(--muted);margin:0 0 12px;font-size:.98rem;}
.pfa-tile .more{color:var(--brand);font-weight:800;font-size:.95rem;}

/* STEPS */
.pfa-steps{background:var(--sand);}
.pfa-steps .pfa-grid{grid-template-columns:repeat(3,1fr);}
.pfa-step{background:#fff;border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);position:relative;}
.pfa-step .num{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:16px;}
.pfa-step h3{font-size:1.2rem;margin:0 0 10px;}
.pfa-step p{color:var(--muted);margin:0;}

/* WHY / BENEFITS */
.pfa-why .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.pfa-why .panel{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff;border-radius:var(--radius);padding:42px;}
.pfa-why .panel h2{color:#fff;font-size:1.9rem;margin:0 0 14px;}
.pfa-why .panel p{color:#dff0ee;font-size:1.08rem;}
.pfa-benefits{list-style:none;margin:0;padding:0;}
.pfa-benefits li{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px;}
.pfa-benefits .ic{flex:none;width:46px;height:46px;border-radius:12px;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;}
.pfa-benefits h4{margin:0 0 4px;font-size:1.1rem;}
.pfa-benefits p{margin:0;color:var(--muted);}

/* RATGEBER */
.pfa-posts{background:#fff;}
.pfa-posts .pfa-grid{grid-template-columns:repeat(3,1fr);}
.pfa-post{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);transition:.2s;}
.pfa-post:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.pfa-post .thumb{height:160px;background:var(--brand-soft);background-size:cover;background-position:center;}
.pfa-post .body{padding:22px;}
.pfa-post h3{font-size:1.12rem;margin:0 0 8px;}
.pfa-post p{color:var(--muted);font-size:.95rem;margin:0;}

/* FINAL CTA */
.pfa-cta{background:linear-gradient(135deg,#1f7a76 0%,#103f3d 100%);color:#fff;text-align:center;}
.pfa-cta h2{color:#fff;font-size:2.2rem;margin:0 0 14px;}
.pfa-cta p{color:#fff;font-size:1.15rem;opacity:.95;margin:0 0 28px;}
.pfa-cta .btn{background:var(--accent);color:#fff;box-shadow:0 10px 26px rgba(255,111,89,.4);}
.pfa-cta .btn:hover{background:var(--accent-dark);}

/* RESPONSIVE */
@media(max-width:900px){
  .pfa-hero .wrap{grid-template-columns:1fr;gap:30px;}
  .pfa-hero h1{font-size:2.2rem;}
  .pfa-why .wrap{grid-template-columns:1fr;}
  .pfa-grid,.pfa-steps .pfa-grid,.pfa-posts .pfa-grid{grid-template-columns:1fr;}
  .pfa-search{flex-direction:column;}
  .pfa section{padding:52px 0;}
}

/* TOPBAR PHONE (wie aplaceformom: Berater-Hotline prominent) */
.pfa-topbar{background:var(--brand-dark);color:#fff;font-weight:700;font-size:.95rem;}
.pfa-topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 22px;flex-wrap:wrap;}
.pfa-topbar a{color:#fff;text-decoration:none;}
.pfa-topbar .phone{display:inline-flex;gap:8px;align-items:center;}
.pfa-topbar .phone b{font-size:1.05rem;}

/* STATS */
.pfa-stats{background:#fff;border-bottom:1px solid var(--line);}
.pfa-stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;}
.pfa-stat .big{font-family:'Nunito',sans-serif;font-weight:800;font-size:2.3rem;color:var(--brand);line-height:1;}
.pfa-stat .lbl{color:var(--muted);font-weight:700;margin-top:8px;}

/* TESTIMONIAL */
.pfa-quote{background:var(--brand-soft);}
.pfa-quote .wrap{max-width:820px;text-align:center;}
.pfa-quote .stars{color:var(--accent);font-size:1.4rem;letter-spacing:3px;margin-bottom:18px;}
.pfa-quote blockquote{font-family:'Nunito',sans-serif;font-size:1.55rem;font-weight:700;line-height:1.4;color:var(--brand-dark);margin:0 0 18px;}
.pfa-quote cite{color:var(--muted);font-style:normal;font-weight:700;}

@media(max-width:900px){
  .pfa-stats .wrap{grid-template-columns:1fr 1fr;}
  .pfa-quote blockquote{font-size:1.25rem;}
}

/* GeneratePress-Layout-Overrides für die Landing-Page (volle Breite, kein Flex-Stacking) */
body.pfa{overflow-x:hidden;}
.home #page.grid-container{max-width:100%;padding:0;}
.home #content.site-content{display:block;padding:0;}
.home .site-content > *{width:100%;}

/* UNSER VERSPRECHEN */
.pfa-promise{background:#fff;}
.pfa-promise .pfa-grid{grid-template-columns:repeat(4,1fr);}
.pfa-promise .card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;transition:.2s;}
.pfa-promise .card:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.pfa-promise .ic{width:50px;height:50px;border-radius:14px;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.pfa-promise h3{font-size:1.08rem;margin:0 0 8px;}
.pfa-promise p{color:var(--muted);margin:0;font-size:.96rem;}

/* TRUST-LEISTE */
.pfa-trustband{background:var(--brand-soft);}
.pfa-trustband .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 34px;padding:22px;}
.pfa-trustband .ti{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--brand-dark);font-size:.98rem;}
.pfa-trustband .ti svg{flex:none;}

@media(max-width:900px){
  .pfa-promise .pfa-grid{grid-template-columns:1fr;}
  .pfa-trustband .wrap{flex-direction:column;align-items:flex-start;gap:12px;}
}
