.fgp{--fgp-gold:#d1a155;background:#fff;color:#282828;padding:clamp(16px,3vw,36px);border:1px solid #eadfc8;border-radius:12px;margin:24px 0;font-family:inherit}.fgp h2{color:#111;margin-top:0}.fgp-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}.fgp label{display:flex;flex-direction:column;gap:5px;font-size:.9rem;font-weight:600}.fgp input{width:100%;min-width:0;border:1px solid #aaa;border-radius:5px;padding:10px;background:#fff;color:#222;font:inherit;box-sizing:border-box}.fgp button{background:#111;color:#fff;border:0;border-radius:5px;padding:10px 16px;cursor:pointer;font:inherit;line-height:1.4}.fgp button:hover{background:#725627}.fgp button:disabled{opacity:.45;cursor:default}.fgp :focus-visible{outline:3px solid var(--fgp-gold);outline-offset:3px}.fgp a{color:#725627;text-decoration:underline}.fgp-results{overflow-x:auto}.fgp table{border-collapse:collapse;width:100%;font-size:.92rem;text-align:left}.fgp th{background:#f6e7bc;color:#111}.fgp th,.fgp td{padding:12px;border-bottom:1px solid #ddd;vertical-align:top}.fgp tbody tr:nth-child(even){background:#f9f7f7}.fgp-pages{display:flex;gap:15px;align-items:center;justify-content:center;margin-top:20px}.fgp-detail{background:#f9f7f7;padding:22px;border-left:4px solid var(--fgp-gold);margin-top:24px}.fgp-detail[hidden]{display:none}.fgp dl{display:grid;grid-template-columns:minmax(120px,1fr) 3fr;gap:10px 20px}.fgp dt{font-weight:700}.fgp dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.fgp-status{min-height:1.5em}@media(max-width:550px){.fgp dl{display:block}.fgp dd{margin:4px 0 14px}.fgp th,.fgp td{padding:8px}.fgp-filters{grid-template-columns:1fr}}

.fgp-editor{padding:20px;background:white;border:1px solid #ccd0d4;margin:18px 0}.fgp-edit-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.fgp-edit-fields label{font-weight:600;display:flex;flex-direction:column;gap:5px}.fgp-edit-fields textarea{width:100%;font-weight:400}.fgp-admin-table{overflow:auto;margin-top:14px}.fgp-admin-table td{overflow-wrap:anywhere}#fgp-records{margin-top:35px}#fgp-records form button{margin-left:6px}
.fgp-admin-pages{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:16px}.fgp-admin-pages p{margin:0}.fgp-admin-pages input[type=number]{width:90px}
.fgp-portrait{margin:20px 0;max-width:260px}.fgp-portrait img{display:block;width:auto;max-width:100%;height:auto;max-height:360px;object-fit:contain;border:1px solid #eadfc8;border-radius:5px}.fgp-portrait figcaption{font-size:.85rem;margin-top:6px}.fgp-photo-editor{margin-top:24px;padding:16px;border:1px solid #ccd0d4}.fgp-photo-editor img{display:block;max-width:220px;max-height:260px;width:auto;height:auto;margin-top:12px}

/* Heritage-inspired support section */
.fgp .fgp-support{position:relative;isolation:isolate;overflow:hidden;max-width:820px;margin:44px auto 0;padding:0;text-align:center;background:#111;color:#f9f7f7;border:1px solid #9b793d;border-radius:18px;box-shadow:0 16px 42px rgba(17,17,17,.12);box-sizing:border-box}
.fgp .fgp-support::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#8c642b,#f6e7bc,#d1a155,#8c642b)}
.fgp .fgp-support::after{content:"";position:absolute;right:-85px;top:-110px;width:300px;height:300px;border:1px solid rgba(209,161,85,.13);border-radius:50%;pointer-events:none}
.fgp .fgp-support-inner{position:relative;z-index:1;padding:clamp(28px,5vw,48px) clamp(20px,5vw,55px)}
.fgp .fgp-support-symbol{display:grid;place-items:center;margin:0 auto 18px;width:56px;height:56px;border-radius:50%;background:rgba(209,161,85,.13);border:1px solid rgba(209,161,85,.4);color:#f6e7bc;font-size:27px}
.fgp .fgp-support-eyebrow{color:#e4c58c;font-size:.73rem;letter-spacing:.19em;font-weight:800;margin-bottom:12px}
.fgp .fgp-support h3{color:#fff;font-size:clamp(1.45rem,3vw,2.05rem);line-height:1.25;letter-spacing:-.025em;margin:0 0 15px}
.fgp .fgp-support p.fgp-support-description{color:#e3ded3;font-size:1rem;line-height:1.75;max-width:610px;margin:0 auto 25px}
.fgp .fgp-support a.fgp-support-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;max-width:100%;box-sizing:border-box;background:#d1a155;color:#17130d;text-decoration:none;border:1px solid #f0d7a4;border-radius:9px;padding:14px 23px;font-weight:800;line-height:1.35;box-shadow:0 5px 18px rgba(0,0,0,.15);transition:background .18s,transform .18s}
.fgp .fgp-support a.fgp-support-button:hover{background:#f6e7bc;color:#17130d;transform:translateY(-2px)}
.fgp .fgp-support a.fgp-support-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.fgp .fgp-support-arrow{font-size:1.1em}
.fgp .fgp-support p.fgp-support-note{font-size:.82rem;line-height:1.6;color:#c6bcac;margin:20px auto 0;max-width:540px}
@media(max-width:550px){.fgp .fgp-support{margin-top:30px;border-radius:12px}.fgp .fgp-support a.fgp-support-button{width:100%;padding:15px 12px}.fgp .fgp-support-eyebrow{letter-spacing:.12em}}
@media(prefers-reduced-motion:reduce){.fgp .fgp-support a.fgp-support-button{transition:none}.fgp .fgp-support a.fgp-support-button:hover{transform:none}}

.fgp .fgp-port-label{display:inline-block;font-weight:700;margin-left:12px;vertical-align:middle;line-height:2.5;}
