.account-layout { max-width:1080px; margin:0 auto; display:grid; grid-template-columns:1fr 440px; gap:64px; align-items:start; }
.account-intro h2 { font-family:'Playfair Display',serif; font-size:32px; color:var(--navy); line-height:1.3; margin-bottom:20px; }
.account-intro p { font-size:14px; color:var(--grey-dark); line-height:1.8; margin-bottom:20px; }
.account-panel { background:var(--white); border:1px solid rgba(10,22,40,.12); padding:36px; }
.account-tabs { display:flex; gap:16px; border-bottom:1px solid rgba(10,22,40,.12); margin-bottom:24px; }
.account-tabs button { border:0; border-bottom:2px solid transparent; background:none; padding:12px 0; color:var(--grey-dark); font:inherit; cursor:pointer; }
.account-tabs button[aria-pressed="true"] { color:var(--navy); border-bottom-color:var(--gold); }
.account-panel label { display:block; font-size:12px; color:var(--navy); margin:16px 0 8px; }
.account-panel input { width:100%; padding:13px 14px; background:var(--cream); border:1px solid rgba(10,22,40,.18); font:inherit; }
.account-panel .btn-primary { width:100%; margin-top:24px; cursor:pointer; border:0; }
.account-panel [hidden] { display:none; }
.account-link { border:0; background:none; color:var(--navy); text-decoration:underline; font:inherit; font-size:12px; margin-top:18px; cursor:pointer; }
.commerce-status { font-size:13px; line-height:1.7; margin-top:16px; }
.catalog-copy { color:var(--grey-mid); font-size:13px; line-height:1.7; margin-bottom:28px; max-width:720px; }
.catalog-copy a { color:var(--gold-light); }
.pdf-section { background:var(--navy); padding:64px 40px; }
.pdf-section .section-title { color:var(--white); }
.pdf-section .section-eyebrow { color:var(--gold-light); }
.pdf-section .section-header { border-bottom-color:rgba(255,255,255,.1); }
.pdf-section .see-all { color:var(--gold-light); }
.pdf-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.pdf-card { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); padding:28px; display:flex; flex-direction:column; gap:12px; transition:background .2s; }
.pdf-card:hover { background:rgba(255,255,255,.08); }
.pdf-icon { width:46px; height:46px; background:rgba(184,151,42,.15); border:1px solid rgba(184,151,42,.3); display:flex; align-items:center; justify-content:center; }
.pdf-icon svg { width:20px; height:20px; stroke:var(--gold); fill:none; stroke-width:1.5; }
.pdf-cat { font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); font-weight:600; }
.pdf-title { font-family:'Playfair Display',serif; font-size:15px; color:var(--white); font-weight:600; line-height:1.35; flex:1; }
.pdf-size { font-size:11px; color:var(--grey-mid); opacity:.45; }
.pdf-btn { background:var(--gold); color:var(--navy); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:10px 16px; border:none; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .2s; display:flex; align-items:center; gap:8px; text-decoration:none; justify-content:center; margin-top:auto; }
.pdf-btn:hover { background:var(--gold-light); }
.pdf-btn svg { width:13px; height:13px; stroke:var(--navy); fill:none; stroke-width:2.5; }
.home-pdf-grid { grid-template-columns:repeat(2,1fr); }
.catalog-description { color:var(--grey-mid); font-size:12px; line-height:1.7; }
.catalog-buy { cursor:pointer; font-family:inherit; text-align:left; }
.catalog-status { color:var(--gold-light); font-size:13px; margin-bottom:20px; }
.catalog-session { color:var(--grey-mid); font-size:12px; margin-bottom:20px; }
.catalog-session a { color:var(--gold-light); }
.commerce-error { color:#a13e35; }
button:disabled { opacity:.55; cursor:wait; }
.account-panel input:focus-visible, .account-tabs button:focus-visible, .catalog-buy:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
@media(max-width:900px) { .account-layout { grid-template-columns:1fr; gap:28px; } .account-panel { padding:28px; } }
@media(max-width:900px) { .pdf-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px) { .pdf-grid { grid-template-columns:1fr; } }
