/*
Theme Name: FamilyGR
Theme URI: https://familygr.com
Author: FamilyGR
Description: A bilingual, editorial WordPress theme for modern family growth.
Version: 1.0.0
Text Domain: familygr
*/

/* Calm Knowledge Home: warm, Arabic-first editorial typography and a clear, low-pressure navigation system. */
:root { --navy:#10213b; --ink:#182641; --teal:#00a89a; --leaf:#25a86f; --violet:#6c63ff; --gold:#ffbd31; --coral:#ff7466; --cream:#fbfaf6; --mist:#f1f7f7; --line:#dbe7e7; --muted:#64748b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:"Noto Kufi Arabic","Cairo",Tahoma,Arial,sans-serif; line-height:1.75; }
body.fgr-en { font-family:"DM Sans","Arial",sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; height:auto; }
picture { display:block; }
:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.fgr-shell { width:min(1180px, calc(100% - 40px)); margin:auto; }
.fgr-skip { position:absolute; inset-inline-start:-999px; top:8px; background:var(--navy); color:white; padding:8px 12px; z-index:999; }
.fgr-skip:focus { inset-inline-start:16px; }
.fgr-site-header { position:sticky; top:0; z-index:90; background:rgba(251,250,246,.93); backdrop-filter:blur(16px); border-bottom:1px solid rgba(16,33,59,.08); }
.fgr-topline { background:var(--navy); color:#fff; font-size:.76rem; }
.fgr-topline .fgr-shell { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.fgr-topline a { color:#bff4ed; font-weight:800; }
.fgr-nav { display:flex; justify-content:space-between; align-items:center; min-height:82px; gap:20px; }
.fgr-brand { display:flex; align-items:center; gap:10px; font-size:1.25rem; font-weight:900; letter-spacing:-.04em; color:var(--navy); white-space:nowrap; }
.fgr-brand img { width:45px; height:45px; object-fit:contain; }
.fgr-brand span b { color:var(--teal); }
.fgr-menu { display:flex; list-style:none; align-items:center; margin:0; padding:0; gap:14px; font-size:.74rem; font-weight:800; white-space:nowrap; }
.fgr-menu a { color:#3a4960; padding:8px 0; border-bottom:2px solid transparent; }
.fgr-menu a:hover, .fgr-menu .current-menu-item a { color:var(--teal); border-color:var(--teal); }
.fgr-nav-actions { display:flex; gap:8px; align-items:center; }
.fgr-global-search input{width:112px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:#fff;font:inherit;font-size:.72rem}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.fgr-lang { border:1px solid var(--line); padding:7px 10px; border-radius:999px; font-size:.75rem; font-weight:800; background:#fff; }
.fgr-contact { background:var(--teal); color:#fff; padding:9px 13px; border-radius:999px; font-weight:900; font-size:.78rem; }
.fgr-hero { background:radial-gradient(circle at 20% 20%, rgba(0,168,154,.17), transparent 28%), linear-gradient(120deg,#e9f6f4 0%,#fbfaf6 46%,#fff3d4 100%); overflow:hidden; }
.fgr-hero-grid { min-height:655px; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:54px; }
.fgr-kicker { display:inline-flex; gap:7px; align-items:center; color:#047e73; font-weight:900; font-size:.78rem; letter-spacing:.04em; }
.fgr-kicker::before { content:""; width:25px; height:2px; background:var(--gold); display:inline-block; }
.fgr-kicker--brand { align-items:flex-start; flex-direction:column; gap:1px; letter-spacing:0; line-height:1.45; }
.fgr-kicker--brand::before { margin-bottom:4px; }
.fgr-kicker--brand strong { font-size:.88rem; }
.fgr-kicker--brand small { color:#607185; font-family:"DM Sans",Arial,sans-serif; font-size:.66rem; font-weight:800; letter-spacing:.035em; }
.fgr-hero h1 { color:var(--navy); font-size:clamp(2.15rem,4vw,3.5rem); line-height:1.26; letter-spacing:-.03em; margin:18px 0; max-width:620px; }
.fgr-hero h1 em { font-style:normal; color:var(--teal); }
.fgr-hero p { color:#4c5d72; font-size:1.03rem; max-width:570px; margin:0 0 25px; }
.fgr-cta-row { display:flex; flex-wrap:wrap; gap:10px; margin:27px 0; }
.fgr-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; border-radius:12px; padding:0 18px; font-weight:900; font-size:.86rem; transition:transform .18s ease, box-shadow .18s ease; }
.fgr-btn:hover { transform:translateY(-2px); box-shadow:0 12px 24px rgba(16,33,59,.12); }
.fgr-btn-primary { background:var(--navy); color:#fff; }
.fgr-btn-secondary { background:#fff; color:var(--navy); border:1px solid var(--line); }
.fgr-proof { display:flex; gap:20px; flex-wrap:wrap; font-size:.76rem; color:var(--muted); }
.fgr-proof strong { color:var(--navy); display:block; font-size:1rem; }
.fgr-hero-visual { position:relative; min-height:490px; }
.fgr-hero-photo { position:absolute; inset:34px 0 0 50px; width:calc(100% - 50px); height:430px; object-fit:cover; border-radius:42% 42% 14px 42%; box-shadow:0 30px 50px rgba(16,33,59,.18); }
.fgr-visual-ring { position:absolute; width:250px; height:250px; border:30px solid rgba(108,99,255,.17); border-radius:50%; top:0; inset-inline-end:25px; }
.fgr-visual-card { position:absolute; bottom:8px; inset-inline-start:0; background:#fff; padding:15px 18px; border-radius:14px; max-width:220px; box-shadow:0 14px 35px rgba(16,33,59,.16); }
.fgr-visual-card b { display:block; color:var(--teal); font-size:.8rem; }
.fgr-visual-card span { font-size:.74rem; color:var(--muted); }
.fgr-section { padding:92px 0; }
.fgr-section-alt { background:#f0f7f6; }
.fgr-section-heading { display:flex; justify-content:space-between; align-items:end; gap:22px; margin-bottom:32px; }
.fgr-section-heading h2 { color:var(--navy); font-size:clamp(1.6rem,2.6vw,2.35rem); line-height:1.34; letter-spacing:-.025em; margin:0; }
.fgr-section-heading p { color:var(--muted); max-width:570px; margin:0; font-size:.92rem; }
.fgr-life-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.fgr-life-card { padding:24px 18px; background:#fff; border:1px solid var(--line); border-radius:14px; min-height:220px; position:relative; overflow:hidden; transition:transform .18s ease, border-color .18s ease; }
.fgr-life-card:hover { transform:translateY(-5px); border-color:var(--teal); }
.fgr-life-card::after { content:""; position:absolute; width:96px; height:96px; border-radius:50%; background:var(--card-accent,#d7f3ef); top:-38px; inset-inline-end:-31px; }
.fgr-life-card small { color:var(--teal); font-weight:900; position:relative; z-index:1; }
.fgr-life-card h3 { margin:18px 0 7px; color:var(--navy); font-size:1.08rem; position:relative; z-index:1; }
.fgr-life-card p { margin:0; color:var(--muted); font-size:.8rem; position:relative; z-index:1; }
.fgr-ecosystem { background:var(--navy); color:#fff; position:relative; overflow:hidden; }
.fgr-ecosystem::before { content:""; position:absolute; width:430px; height:430px; border-radius:50%; border:90px solid rgba(0,168,154,.18); top:-225px; inset-inline-start:-150px; }
.fgr-ecosystem-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:55px; align-items:center; position:relative; }
.fgr-ecosystem h2 { font-size:clamp(1.7rem,3vw,2.55rem); line-height:1.3; margin:12px 0; }
.fgr-ecosystem p { color:#c6d4e8; }
.fgr-platform-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; }
.fgr-platform { min-height:155px; padding:20px; border-radius:15px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); display:block; transition:background .18s ease, transform .18s ease, border-color .18s ease; }
.fgr-platform:hover { background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.32); transform:translateY(-3px); }
.fgr-platform i { display:grid; place-items:center; width:39px; height:39px; border-radius:12px; background:var(--accent,#00a89a); font-style:normal; font-size:1.15rem; }
.fgr-platform h3 { margin:14px 0 5px; font-size:1rem; }
.fgr-platform p { font-size:.76rem; margin:0; }
.fgr-platform-famtodo img{width:142px;height:52px;object-fit:contain;object-position:left center;background:#fff;border-radius:10px;padding:5px}.fgr-famtodo-link{gap:9px}.fgr-famtodo-link img{width:54px;height:22px;object-fit:contain;border-radius:5px;background:#fff;padding:2px}
.fgr-platform-famtodo img{width:54px;height:54px;border-radius:16px;padding:0;object-fit:cover;background:transparent}.fgr-assistant-toggle{display:flex!important;align-items:center;gap:7px}.fgr-assistant-toggle em{font-style:normal;font-size:.68rem;font-weight:800}.fgr-assistant-toggle span{font-size:1.25rem}
.fgr-famtodo-link img{width:118px!important;height:34px!important;max-width:42vw;object-fit:contain!important;background:transparent!important;padding:0!important;border-radius:0!important}
.fgr-library-head { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.fgr-filter-row { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.fgr-filter { border:1px solid var(--line); background:#fff; border-radius:999px; padding:7px 12px; color:#506074; font:inherit; font-size:.76rem; font-weight:900; cursor:pointer; }
.fgr-filter.is-active, .fgr-filter:hover { background:var(--teal); color:#fff; border-color:var(--teal); }
.fgr-library { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.fgr-resource { display:flex; flex-direction:column; padding:20px; min-height:230px; background:#fff; border:1px solid var(--line); border-radius:15px; }
.fgr-resource[hidden] { display:none; }
.fgr-resource-top { display:flex; justify-content:space-between; gap:10px; align-items:center; font-size:.7rem; color:#607185; font-weight:800; }
.fgr-resource-tag { color:#087e73; background:#e4f7f4; padding:5px 8px; border-radius:999px; }
.fgr-resource h3 { font-size:1.05rem; line-height:1.55; color:var(--navy); margin:18px 0 9px; }
.fgr-resource p { color:var(--muted); font-size:.78rem; margin:0 0 18px; }
.fgr-resource a { margin-top:auto; color:var(--teal); font-size:.78rem; font-weight:900; }
.fgr-resource a::after { content:" ←"; }
.fgr-en .fgr-resource a::after { content:" →"; }
.fgr-pathways { background:linear-gradient(180deg,#fbfaf6 0%,#edf7f6 100%); }
.fgr-pathways-head { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:30px; }
.fgr-pathways-head h2 { margin:10px 0 0; color:var(--navy); font-size:clamp(1.7rem,3vw,2.5rem); line-height:1.3; letter-spacing:-.025em; }
.fgr-pathways-head p { max-width:500px; margin:0; color:var(--muted); font-size:.9rem; }
.fgr-pathway-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(16,33,59,.13); border-inline-start:1px solid rgba(16,33,59,.13); }
.fgr-pathway { min-height:205px; padding:22px 22px 18px; border-inline-end:1px solid rgba(16,33,59,.13); border-bottom:1px solid rgba(16,33,59,.13); background:rgba(255,255,255,.36); transition:background .18s ease,transform .18s ease; }
.fgr-pathway:hover { background:#fff; transform:translateY(-3px); }
.fgr-pathway small { color:var(--teal); font-weight:900; font-size:.72rem; letter-spacing:.08em; }
.fgr-pathway h3 { color:var(--navy); font-size:1.03rem; margin:18px 0 7px; }
.fgr-pathway p { color:var(--muted); font-size:.77rem; margin:0 0 15px; }
.fgr-pathway span { color:var(--teal); font-size:.75rem; font-weight:900; }
.fgr-pathway span::after { content:" ←"; }
.fgr-en .fgr-pathway span::after { content:" →"; }
.fgr-library-intro { max-width:760px; margin:0 0 26px; color:var(--muted); }
.fgr-library-search { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:end; margin:0 0 22px; max-width:700px; }
.fgr-library-search label { grid-column:1/-1; color:var(--navy); font-size:.78rem; font-weight:900; }
.fgr-library-search input { min-width:0; border:1px solid var(--line); border-radius:11px; padding:12px; font:inherit; background:#fff; }
.fgr-related { margin-top:48px; padding-top:34px; border-top:1px solid var(--line); }
.fgr-related h2 { color:var(--navy); font-size:1.55rem; margin:0 0 18px; }
.fgr-path-filter, .fgr-situation-row { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:18px 0; }
.fgr-path-filter a, .fgr-situation-row a { border:1px solid var(--line); padding:8px 12px; background:#fff; color:#506074; font-size:.76rem; font-weight:900; border-radius:999px; }
.fgr-path-filter a:hover, .fgr-path-filter a.is-active, .fgr-situation-row a:hover, .fgr-situation-row a.is-active { background:var(--teal); color:#fff; border-color:var(--teal); }
.fgr-situation-row { border-top:1px solid var(--line); padding-top:18px; margin-bottom:28px; }
.fgr-situation-row > span { color:var(--navy); font-size:.8rem; font-weight:900; margin-inline-end:3px; }
.fgr-empty-path { grid-column:1/-1; padding:50px; background:#edf7f6; text-align:center; }
.fgr-empty-path h2 { color:var(--navy); margin:0 0 8px; }
.fgr-empty-path p { color:var(--muted); margin:0 0 20px; }
.fgr-resource-article .entry-content { margin-top:30px; }
.fgr-resource-article .entry-content h2 { color:var(--navy); margin-top:36px; font-size:1.4rem; }
.fgr-resource-article .entry-content p, .fgr-resource-article .entry-content li { color:#405069; }
.fgr-resource-article .entry-content ul { padding-inline-start:24px; }
.fgr-resource-lead { color:var(--muted); font-size:1.08rem; max-width:730px; }
.fgr-famtodo-bridge { display:grid; grid-template-columns:1fr auto; gap:25px; align-items:center; margin-top:44px; padding:28px; color:#fff; background:var(--navy); border-radius:18px; position:relative; overflow:hidden; }
.fgr-famtodo-bridge::after { content:""; position:absolute; inset-inline-end:-55px; bottom:-80px; width:220px; height:220px; border:36px solid rgba(0,168,154,.22); border-radius:50%; }
.fgr-famtodo-bridge > * { position:relative; z-index:1; }
.fgr-famtodo-bridge span { color:#86eadf; font-weight:900; font-size:.76rem; }
.fgr-famtodo-bridge h2 { margin:7px 0; font-size:1.35rem; line-height:1.5; }
.fgr-famtodo-bridge p { margin:0 0 9px; color:#c9d8e9; font-size:.86rem; max-width:580px; }
.fgr-famtodo-bridge small { color:#9bb0c6; font-size:.71rem; }
.fgr-famtodo-bridge .fgr-btn { white-space:nowrap; background:#00a89a; }
.fgr-two-col { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.fgr-photo-stack { position:relative; min-height:420px; }
.fgr-photo-stack picture img, .fgr-photo-stack > img { width:80%; height:340px; object-fit:cover; border-radius:18px; box-shadow:0 18px 42px rgba(16,33,59,.15); }
.fgr-photo-stack .fgr-small-photo { width:47%; height:190px; position:absolute; bottom:0; inset-inline-end:0; border:10px solid var(--cream); }
.fgr-feature-list { display:grid; gap:14px; }
.fgr-feature { display:grid; grid-template-columns:44px 1fr; gap:13px; align-items:start; }
.fgr-feature i { display:grid; place-items:center; width:38px; height:38px; border-radius:10px; background:#e5f7f3; color:var(--teal); font-style:normal; font-weight:900; }
.fgr-feature h3 { margin:0 0 2px; color:var(--navy); font-size:.95rem; }
.fgr-feature p { margin:0; color:var(--muted); font-size:.8rem; }
.fgr-newsletter { background:linear-gradient(115deg,#e8f4f3,#f8f0dc); border:1px solid rgba(0,168,154,.15); }
.fgr-newsletter-grid { padding:55px 0; display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; }
.fgr-newsletter h2 { margin:0 0 7px; color:var(--navy); font-size:2rem; }
.fgr-newsletter p { margin:0; color:#536276; }
.fgr-newsletter form { display:flex; gap:9px; }
.fgr-newsletter input { min-width:260px; border:1px solid var(--line); background:#fff; border-radius:11px; padding:13px; font:inherit; }
.fgr-site-footer { background:#0c1930; color:#d6e0ef; padding:55px 0 22px; }
.fgr-footer-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:28px; }
.fgr-footer-grid h3 { color:#fff; font-size:.9rem; margin:0 0 13px; }
.fgr-footer-grid p, .fgr-footer-grid a { color:#aebed0; font-size:.76rem; }
.fgr-footer-grid ul { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.fgr-footer-bottom { margin-top:38px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); display:flex; justify-content:space-between; gap:15px; color:#8393a9; font-size:.7rem; }
.fgr-notice { background:var(--gold); color:#182641; font-size:.78rem; font-weight:900; }
.fgr-notice-inner { min-height:38px; display:flex; align-items:center; justify-content:center; gap:12px; }
.fgr-notice a { text-decoration:underline; }
.fgr-campaign-corner { position:fixed; bottom:19px; inset-inline-end:19px; z-index:80; max-width:310px; background:white; border:1px solid var(--line); border-radius:14px; box-shadow:0 15px 42px rgba(16,33,59,.18); padding:15px; }
.fgr-campaign-corner img { width:68px; height:68px; object-fit:cover; border-radius:10px; float:inline-start; margin-inline-end:12px; }
.fgr-campaign-corner strong { color:var(--navy); font-size:.84rem; display:block; }
.fgr-campaign-corner p { margin:4px 0; color:var(--muted); font-size:.73rem; }
.fgr-campaign-corner button { position:absolute; top:6px; inset-inline-end:7px; background:transparent; border:0; color:var(--muted); cursor:pointer; }
.fgr-assistant { position:fixed; bottom:18px; inset-inline-start:18px; z-index:85; }
.fgr-assistant-toggle { width:58px; height:58px; border:0; cursor:pointer; border-radius:18px; color:#fff; background:linear-gradient(135deg,var(--teal),#1985a4); box-shadow:0 13px 28px rgba(0,168,154,.3); font-size:1.35rem; }
.fgr-assistant-panel { display:none; width:min(355px, calc(100vw - 35px)); background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 20px 60px rgba(16,33,59,.25); margin-bottom:10px; }
.fgr-assistant.is-open .fgr-assistant-panel { display:block; }
.fgr-assistant-head { background:var(--navy); padding:17px; color:#fff; }
.fgr-assistant-head strong { display:block; }
.fgr-assistant-head small { color:#b9cee4; }
.fgr-assistant-body { padding:17px; min-height:150px; }
.fgr-assistant-message { background:#eef7f5; padding:11px; border-radius:11px 11px 11px 2px; color:#244059; font-size:.8rem; margin-bottom:12px; }
.fgr-assistant-options { display:grid; gap:7px; }
.fgr-assistant-option { text-align:start; border:1px solid var(--line); padding:10px; border-radius:9px; background:#fff; font:inherit; font-size:.76rem; font-weight:800; color:var(--navy); cursor:pointer; }
.fgr-assistant-option:hover { border-color:var(--teal); color:var(--teal); }
.fgr-contact-form { display:grid; gap:12px; padding:28px; background:#fff; border:1px solid var(--line); border-radius:16px; }
.fgr-contact-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:26px}.fgr-contact-form h2,.fgr-contact-aside h2{margin:0;color:var(--navy);font-size:2rem}.fgr-contact-form p{margin:0;color:var(--muted);font-size:.86rem}.fgr-contact-aside{background:linear-gradient(145deg,#10213b,#00a89a);border-radius:22px;padding:34px;color:#fff;display:grid;align-content:center;gap:14px}.fgr-contact-aside img{width:66px;height:66px;object-fit:contain;background:#fff;border-radius:18px;padding:8px}.fgr-contact-aside span{color:#a9f4ed;font-weight:900;font-size:.8rem}.fgr-contact-aside h2{color:#fff;line-height:1.35}.fgr-contact-aside p,.fgr-contact-aside small{color:#d5e8ef}.fgr-contact-aside strong{margin-top:12px}.fgr-contact-success{max-width:720px;margin:0 auto;text-align:center;padding:70px 35px;background:linear-gradient(145deg,#fff,#edf7f6);border:1px solid var(--line);border-radius:28px}.fgr-contact-success img{width:82px;height:82px;object-fit:contain;animation:fgr-celebrate .7s ease-out}.fgr-contact-success span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;margin:12px auto;background:#d7f8e8;color:#087e73;font-weight:900}.fgr-contact-success h2{color:var(--navy);font-size:2rem}.fgr-contact-success p{color:var(--muted);max-width:520px;margin:0 auto 24px}@keyframes fgr-celebrate{0%{transform:scale(.8) rotate(-10deg);opacity:0}100%{transform:scale(1) rotate(0);opacity:1}}
.fgr-contact-form label { display:grid; gap:5px; font-size:.8rem; font-weight:800; }
.fgr-contact-form input,.fgr-contact-form textarea { padding:11px; border:1px solid var(--line); border-radius:8px; font:inherit; }
.fgr-ft-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:48px;align-items:center;padding:54px;overflow:hidden;background:linear-gradient(135deg,#edf7f6,#fbfaf6 62%,#fff4d8);border:1px solid rgba(0,168,154,.14);border-radius:28px}.fgr-ft-logo{display:block!important;width:150px!important;height:42px!important;object-fit:contain!important;object-position:right center!important;background:transparent!important;padding:0!important;border-radius:0!important;margin:0 0 16px}.fgr-ft-hero:after{content:"";display:block;grid-column:2;grid-row:1/5;min-height:330px;background:url('assets/famtodo-family-hub-mockup.png') center/contain no-repeat}.fgr-ft-hero h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.2;color:var(--navy);margin:9px 0}.fgr-ft-hero p{color:#526278;max-width:620px}.fgr-ft-hero small{display:block;color:#64748b;font-size:.72rem}.fgr-ft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.fgr-ft-grid article{padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px;color:#536276}.fgr-ft-grid article b{display:block;color:var(--navy);font-size:1rem}.fgr-ft-note{padding:18px 20px;background:#fff5dc;border-inline-start:4px solid var(--gold);color:#4a5568}@media(max-width:900px){.fgr-ft-hero{grid-template-columns:1fr;padding:30px}.fgr-ft-hero:after{grid-column:1;grid-row:auto;min-height:250px}.fgr-ft-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.fgr-ft-grid{grid-template-columns:1fr}.fgr-ft-hero{padding:23px;border-radius:20px}.fgr-ft-logo{width:130px!important}}
@media (max-width:1080px){ .fgr-nav{flex-wrap:wrap;padding:10px 0}.fgr-nav nav{order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.fgr-menu{display:flex;width:max-content;min-width:100%;padding:5px 0 7px;gap:18px}.fgr-global-search{display:none} }
@media (max-width:900px){ .fgr-hero-grid,.fgr-ecosystem-grid,.fgr-two-col,.fgr-newsletter-grid{grid-template-columns:1fr}.fgr-hero-grid{padding:52px 0}.fgr-hero-visual{min-height:370px}.fgr-hero-photo{height:330px}.fgr-life-grid{grid-template-columns:repeat(2,1fr)}.fgr-library{grid-template-columns:repeat(2,1fr)}.fgr-footer-grid{grid-template-columns:repeat(2,1fr)}.fgr-newsletter form{max-width:500px}.fgr-platform-grid{max-width:650px}.fgr-pathways-head{display:block}.fgr-pathways-head p{margin-top:12px}.fgr-pathway-grid{grid-template-columns:repeat(2,1fr)}.fgr-famtodo-bridge{grid-template-columns:1fr}.fgr-famtodo-bridge .fgr-btn{justify-self:start} }
@media (max-width:560px){ .fgr-shell{width:min(100% - 28px,1180px)}.fgr-topline .fgr-shell{justify-content:center;text-align:center}.fgr-topline span{display:none}.fgr-nav{min-height:68px}.fgr-contact{display:none}.fgr-brand{font-size:1.08rem}.fgr-hero h1{font-size:2.45rem}.fgr-hero-visual{min-height:305px}.fgr-hero-photo{inset:14px 0 0 25px;width:calc(100% - 25px);height:270px}.fgr-visual-ring{width:150px;height:150px;border-width:17px}.fgr-visual-card{padding:9px 11px;font-size:.7rem}.fgr-section{padding:64px 0}.fgr-section-heading{display:block}.fgr-section-heading p{margin-top:12px}.fgr-life-grid,.fgr-library,.fgr-platform-grid,.fgr-footer-grid,.fgr-pathway-grid{grid-template-columns:1fr}.fgr-photo-stack{min-height:335px}.fgr-photo-stack picture img,.fgr-photo-stack > img{height:280px}.fgr-newsletter form,.fgr-library-search{display:grid;grid-template-columns:1fr}.fgr-newsletter input{min-width:0;width:100%}.fgr-footer-bottom{display:grid}.fgr-assistant{bottom:13px;inset-inline-start:13px}.fgr-campaign-corner{bottom:85px;inset-inline-end:13px;max-width:280px}.fgr-famtodo-bridge{padding:22px}.fgr-path-filter,.fgr-situation-row{gap:6px}.fgr-path-filter a,.fgr-situation-row a{font-size:.7rem;padding:7px 9px} }
@media (max-width:560px){
  .fgr-nav nav{overflow:visible}
  body{overflow-x:clip}
  .fgr-section{overflow-x:clip}
  .fgr-menu{gap:10px;min-width:0;width:100%;justify-content:space-between;font-size:.66rem}
  .fgr-menu li:last-child{display:none}
  .fgr-contact-layout{grid-template-columns:minmax(0,1fr);gap:18px;max-width:100%;width:100%}
  .fgr-contact-form,.fgr-contact-aside{min-width:0}
  .fgr-assistant{bottom:12px;inset-inline-start:auto;inset-inline-end:12px}
  .fgr-assistant-toggle{height:48px;width:48px;border-radius:15px}
  .fgr-assistant-toggle em{display:none}
  .fgr-assistant-toggle span{font-size:1.1rem}
}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto}.fgr-btn,.fgr-life-card,.fgr-pathway{transition:none}.fgr-btn:hover,.fgr-life-card:hover,.fgr-pathway:hover{transform:none} }
