.welcome{color:var(--ink);font-family:var(--sans)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(180px,.55fr);align-items:center;gap:2rem;height:clamp(380px,50vh,520px);padding:1.6rem 6vw 1.6rem;overflow:hidden;color:#f4f6fb;background:#000;background-image:none;border-bottom:1px solid rgba(255,255,255,.42)}.letter-field{position:absolute;inset:0;z-index:0;overflow:hidden;background:#000;color:#ffffffd1;font-family:EB Garamond,Geeza Pro,Noto Naskh Arabic,Times New Roman,serif;font-size:1.2rem;line-height:1.7;pointer-events:none;-webkit-user-select:none;user-select:none}.letter-grid{display:grid;grid-template-columns:repeat(28,1fr);grid-template-rows:repeat(16,1fr);height:100%;align-items:center;text-align:center}.letter-grid span{opacity:.05;transition:opacity .52s linear}@media(prefers-reduced-motion:reduce){.letter-grid span{transition:none}}.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background-color:transparent;background-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.9) 22%,rgba(0,0,0,.2) 40%,transparent 52%)}.hero-copy,.portrait{position:relative;z-index:2}.eyebrow{margin:0 0 .55rem;font-size:.84rem;font-weight:600;letter-spacing:-.01em;color:#f4f6fbb8}.hero h1{margin:0;max-width:12ch;font-family:EB Garamond,Georgia,serif;font-size:clamp(2.7rem,4.4vw,4.3rem);font-weight:500;line-height:.94;letter-spacing:-.03em}.lede{max-width:34rem;margin:.85rem 0 0;font-size:1.02rem;line-height:1.55;color:#f4f6fbd1}.hero-actions,.archive-links{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.hero-actions{margin-top:1.15rem}.ico{width:1.05rem;height:1.05rem;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;height:40px;padding:0 1.1rem;border-radius:999px;border:1px solid transparent;font:600 .92rem/1 Avenir Next,Segoe UI,sans-serif;letter-spacing:-.01em;text-decoration:none;cursor:pointer}.btn-solid{background:#f7f4ee;color:#141820}.btn-solid:hover{background:#fff}.btn-glass{background:#ffffff14;color:#f4f6fb;border-color:#ffffff38;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-glass:hover{background:#ffffff29}.portrait{justify-self:end;width:min(100%,340px);margin:0}.portrait img{display:block;width:100%;height:min(34vh,300px);object-fit:cover;object-position:72% 42%;border-radius:16px;box-shadow:0 24px 50px #00000059}.portrait figcaption{margin-top:.7rem;font-size:.78rem;color:#f4f6fbb3}.catalog{scroll-margin-top:calc(var(--nav-h, 68px) + 16px);max-width:1080px;margin:0 auto;padding:1.5rem 1.5rem 2rem}.catalog-head{margin-bottom:1.15rem}.catalog-head h2{margin:0 0 .75rem;font-family:EB Garamond,Georgia,serif;font-size:2rem;font-weight:500;letter-spacing:-.02em}.law-find{display:block;position:relative;width:min(100%,22rem);margin:0}.law-find .ico{position:absolute;left:.85rem;top:50%;width:1rem;height:1rem;transform:translateY(-50%);color:var(--muted);pointer-events:none}.law-find input{width:100%;height:40px;padding:0 .85rem 0 2.35rem;border:1px solid var(--border);border-radius:999px;background:var(--canvas);color:var(--ink);font:400 .92rem/1 Avenir Next,Segoe UI,sans-serif}.law-find input:focus{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:1px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.volume-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem}.volume-card{background:var(--paper);border:1px solid var(--border);border-radius:16px;padding:1rem 1.1rem .75rem;box-shadow:0 1px 2px var(--shadow)}.volume-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.law-list{list-style:none;margin:.15rem 0 0;padding:0}.volume-row{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.volume-row h3{margin:0;min-width:0;font-family:EB Garamond,Georgia,serif;font-size:1.45rem;font-weight:500}.volume-toggle{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;margin:0;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.volume-toggle:hover{color:var(--accent)}.volume-chevron{display:inline-flex;color:var(--muted);transition:transform .15s ease}.volume-chevron.is-open{transform:rotate(90deg)}.volume-chevron .ico{width:1rem;height:1rem}.volume-toggle .ico{width:1.15rem;height:1.15rem;color:var(--accent)}.volume-count{color:var(--muted);font-family:Avenir Next,Segoe UI,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.01em}.volume-card:not(.is-open) .volume-row{border-bottom:0;padding-bottom:0}.volume-row>a{flex-shrink:0;color:var(--muted);font-size:.8rem;font-weight:600;text-decoration:none}.volume-row>a:hover{color:var(--accent)}.law-list a{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.42rem .35rem;border-radius:8px;color:var(--ink);font-family:EB Garamond,Georgia,serif;font-size:1.18rem;text-decoration:none;line-height:1.3}.law-list .ico{color:var(--muted)}.law-list a:hover{background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--accent)}.law-list a:hover .ico{color:var(--accent)}.catalog-empty{margin:.6rem .5rem;color:var(--muted);font-size:.92rem}.welcome-fallback{min-height:70vh;display:grid;place-content:center;padding:4rem 1.5rem;background:#000;color:#f4f6fb;text-align:center}.welcome-fallback h1{font-family:EB Garamond,Georgia,serif;font-size:clamp(2.8rem,6vw,4.5rem);font-weight:500}.welcome-fallback a{color:#f4f6fb}@media(max-width:900px){.hero{grid-template-columns:1fr;align-items:center;height:auto;min-height:0;padding-top:1.4rem;padding-bottom:1.5rem}.portrait{justify-self:start;width:148px;order:-1}.portrait img{height:190px}.catalog{padding-inline:1rem}.law-find{width:100%}.volume-board{grid-template-columns:1fr}}
