.profile-page { --ink:#082f49; --gold:#b18b3e; max-width:1160px; margin:auto; padding:3rem 1.5rem 5rem; }
.profile-page a { text-underline-offset:4px; }
.profile-breadcrumb { display:flex; flex-wrap:wrap; gap:.6rem; font-size:.95rem; color:#475569; margin-bottom:2rem; }
.profile-breadcrumb a { text-decoration:underline; }
.profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:2rem; align-items:start; }
.profile-sheet { background:#fff; border:1px solid #dbe2e8; border-top:5px solid var(--ink); border-radius:2px 2px 20px 20px; padding:2.5rem; min-width:0; }
.profile-eyebrow { text-transform:uppercase; letter-spacing:.16em; font-size:.75rem; font-weight:700; color:#53677a; margin:0 0 1rem; }
.profile-logo { width:180px; height:108px; object-fit:contain; object-position:left center; padding:.65rem; background:#fff; border:1px solid #e2e8f0; border-radius:8px; margin-bottom:1.5rem; }
.profile-page h1 { font-size:clamp(2.1rem,4vw,3.6rem); color:var(--ink); letter-spacing:-.04em; line-height:1.08; margin-bottom:1rem; overflow-wrap:anywhere; }
.profile-page h2 { font-size:1.45rem; color:var(--ink); font-weight:600; margin-bottom:.8rem; }
.profile-location { color:#53677a; font-size:1.2rem; margin-bottom:1.5rem; }
.profile-status { display:inline-flex; align-items:center; gap:.5rem; font-weight:600; color:#5a4b30; background:#f5efe1; padding:.45rem .85rem; border:1px solid #d7c699; border-radius:99px; }
.profile-details { display:grid; gap:1.4rem; margin:2rem 0; padding:2rem 0; border-block:1px solid #e2e8f0; }
.profile-details dt { font-weight:700; color:var(--ink); margin-bottom:.3rem; }
.profile-details dd { color:#475569; overflow-wrap:anywhere; }
.profile-details a { color:#0369a1; text-decoration:underline; }
.profile-aside { background:#e9f0f5; border:1px solid #d8e2e9; padding:1.75rem; border-radius:18px; }
.profile-aside.dark { background:var(--ink); color:#dae8f0; border-color:var(--ink); }
.profile-aside.dark h2 { color:#fff; }
.profile-aside p + p { margin-top:1rem; }
.profile-button { display:inline-flex; align-items:center; justify-content:center; gap:.7rem; min-height:48px; padding:.85rem 1.2rem; border-radius:10px; background:#0369a1; color:white; font-weight:700; text-align:center; text-decoration:none; cursor:pointer; transition:background .15s,transform .15s; }
.profile-button:hover { background:#075985; transform:translateY(-1px); }
.profile-button:disabled { opacity:.7; cursor:wait; }
.profile-button.gold { background:#e6c67e; color:var(--ink); }
.profile-button.gold:hover { background:#f1d899; }
.profile-share { margin-top:2rem; }
.profile-share label { display:block; font-weight:700; color:var(--ink); margin-bottom:.5rem; }
.profile-share-row { display:flex; gap:.5rem; }
.profile-share input { width:100%; min-width:0; background:#fff; border:1px solid #94a3b8; padding:.65rem; border-radius:8px; color:#475569; }
.profile-share button { white-space:nowrap; }
.profile-small { font-size:.9rem; color:#53677a; line-height:1.65; }
.profile-aside.dark .profile-small { color:#c5d8e5; }
.profile-note { margin-top:1rem; }
.profile-alert { padding:1rem 1.2rem; background:#fff7e6; color:#704c10; border:1px solid #d7b66b; border-radius:10px; margin-bottom:1.5rem; }
.profile-alert.error { background:#fff1f0; color:#9f2424; border-color:#f0b8b2; }
.claim-form { display:grid; gap:1.15rem; margin-top:1.8rem; }
.claim-form label:not(.claim-consent) { display:block; color:var(--ink); font-weight:700; margin-bottom:.4rem; }
.claim-form input:not([type=checkbox]), .claim-form select, .claim-form textarea { width:100%; padding:.8rem; border:1px solid #94a3b8; border-radius:8px; background:#fff; color:#243a4b; font:inherit; }
.claim-form textarea { min-height:105px; resize:vertical; }
.claim-form input:focus, .claim-form select:focus, .claim-form textarea:focus { outline:2px solid #0369a1; outline-offset:2px; }
.claim-consent { display:flex; gap:.7rem; align-items:flex-start; font-size:.95rem; }
.claim-consent input { margin-top:.35rem; width:20px; height:20px; flex-shrink:0; }
.claim-honeypot { display:none; }
.claim-price { border-block:1px solid #45647a; padding:1.3rem 0; margin:1.3rem 0; }
.claim-price strong { display:block; color:#f1d899; font-size:2.6rem; letter-spacing:-.04em; line-height:1.2; }
.claim-steps { list-style:none; counter-reset:step; padding:0; margin:1.8rem 0 0; }
.claim-steps li { counter-increment:step; display:flex; align-items:baseline; gap:.7rem; margin-top:1rem; }
.claim-steps li::before { content:counter(step,decimal-leading-zero); color:#b18b3e; font-size:.85rem; font-weight:700; }
.profile-footer-note { margin-top:1.5rem; font-size:.9rem; color:#53677a; }
@media(max-width:900px) { .profile-layout { grid-template-columns:1fr; } .profile-aside { max-width:none; } }
@media(max-width:600px) { .profile-page { padding:1.8rem 1rem 3rem; } .profile-sheet { padding:1.5rem; } .profile-share-row { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .profile-button { transition:none; } .profile-button:hover { transform:none; } }

.profile-logo[data-logo-background="dark"] { background:#0f172a; border-color:#334155; }
.profile-logo[hidden] { display:none; }
