:root{--bg:#fff;--ink:#0b0d10;--ink-soft:#3d444d;--ink-faint:#767d87;--line:#e3e3e3;--line-strong:#0b0d10;--accent:#7c2230;--accent-tint:#faf3f4;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--sans:system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--devanagari:"Noto Serif Devanagari", "Noto Sans Devanagari", "Nirmala UI", "Sanskrit Text", Mangal, "Kokila", serif;--page:1400px;--gutter:clamp(24px, 5vw, 80px);--ease:cubic-bezier(.22, .61, .36, 1);--quick:.16s;--calm:.28s;--slow:.46s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--sans);color:var(--ink-soft);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:18px;line-height:1.7}*,:before,:after{box-sizing:border-box;border-radius:0}body{background:var(--bg);color:var(--ink-soft);margin:0}h1,h2,h3{font-family:var(--serif);color:var(--ink);letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.15}h1{font-size:clamp(2.75rem,6vw,4.75rem)}h2{font-size:clamp(1.5rem,2.4vw,2rem)}h3{font-size:1.15rem;line-height:1.35}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}img{max-width:100%;display:block}body{overflow-wrap:break-word}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.shell{opacity:0;transition:opacity var(--slow) var(--ease)}.shell.is-revealed{opacity:1}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes settle-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.route-view{animation:rise-in var(--slow) var(--ease) both}.pub-list,.book-list,.post-grid,.state{animation:rise-in var(--calm) var(--ease) both}.state-loading{animation:fade-in var(--calm) var(--ease) .26s both}.img-fade{opacity:0;transition:opacity var(--slow) var(--ease)}.img-fade.is-loaded{opacity:1}.site-header{z-index:20;background:var(--bg);border-bottom:1px solid var(--line-strong);position:sticky;top:0}.site-header-inner{max-width:var(--page);padding:22px var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 auto;display:flex}.brand{color:var(--ink);transition:color var(--calm) var(--ease);flex-direction:column;line-height:1.2;display:flex}.brand:hover{color:var(--accent);text-decoration:none}.brand-name{font-family:var(--serif);letter-spacing:.16em;text-transform:uppercase;font-size:1.5rem;font-weight:600}.brand-role{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px;font-size:.72rem}.site-header nav ul{flex-wrap:wrap;gap:34px;display:flex}.site-header nav a{color:var(--ink-soft);letter-spacing:.14em;text-transform:uppercase;transition:color var(--calm) var(--ease), border-bottom-color var(--calm) var(--ease);border-bottom:2px solid #0000;padding:6px 0;font-size:.8rem;display:inline-block}.site-header nav a:hover{color:var(--ink);border-bottom-color:var(--line);text-decoration:none}.site-header nav a.active{color:var(--accent);border-bottom-color:var(--accent)}.nav-toggle{background:var(--bg);border:1px solid var(--line-strong);cursor:pointer;width:42px;height:42px;transition:background-color var(--calm) var(--ease);padding:0;display:none}.nav-toggle-bars{justify-items:center;gap:5px;display:grid}.nav-toggle-bars span{background:var(--ink);width:20px;height:2px;transition:transform var(--calm) var(--ease), opacity var(--quick) var(--ease), background-color var(--calm) var(--ease);display:block}.nav-toggle.is-open .nav-toggle-bars span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open .nav-toggle-bars span:nth-child(2){opacity:0}.nav-toggle.is-open .nav-toggle-bars span:last-child{transform:translateY(-7px)rotate(-45deg)}.nav-toggle:hover{background:var(--ink)}.nav-toggle:hover .nav-toggle-bars span{background:var(--bg)}@media (width<=940px){.nav-toggle{display:block}.site-header nav{flex-basis:100%;display:none}.site-header nav.is-open{animation:settle-in var(--calm) var(--ease) both;display:block}.site-header nav ul{border-top:1px solid var(--line);flex-direction:column;gap:0;padding-top:8px}.site-header nav a{border-bottom:1px solid var(--line);width:100%;padding:14px 0}}@media (width<=560px){.site-header-inner{padding:12px var(--gutter);gap:12px}.brand-name{letter-spacing:.12em;font-size:1.12rem}.brand-role{letter-spacing:.16em;margin-top:2px;font-size:.6rem}.nav-toggle{width:38px;height:38px}.site-header nav a{padding:12px 0;font-size:.75rem}}main{min-height:60vh}.home,.page{max-width:var(--page);padding:clamp(48px, 7vw, 104px) var(--gutter) clamp(80px, 10vw, 140px);margin:0 auto}.hero{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:clamp(40px,6vw,96px);display:grid}.display-name{letter-spacing:.02em;text-transform:uppercase;font-size:clamp(3.5rem,12vw,9rem);line-height:.95}.hero-role{font-family:var(--serif);color:var(--ink);margin-top:20px;font-size:clamp(1.3rem,2.6vw,2rem)}.hero-credentials{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:14px;font-size:.95rem}.hero-enrollment{border:1px solid var(--line-strong);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin-top:18px;padding:9px 16px;font-size:.78rem;display:inline-block}.hero-verse{border-left:3px solid var(--accent);max-width:46ch;margin:34px 0 0;padding-left:24px}.hero-verse blockquote{margin:0}.verse-line{font-family:var(--devanagari);color:var(--ink);font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.85}.verse-meaning{color:var(--ink-soft);margin-top:18px;font-size:.95rem;line-height:1.65}.verse-label{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;font-size:.7rem;display:block}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.button{background:var(--ink);color:var(--bg);border:1px solid var(--ink);letter-spacing:.14em;text-transform:uppercase;transition:background-color var(--calm) var(--ease), border-color var(--calm) var(--ease), color var(--calm) var(--ease);padding:16px 32px;font-size:.8rem;display:inline-block}.button:hover{background:var(--accent);border-color:var(--accent);text-decoration:none}.button[disabled]{border-color:var(--line);color:var(--ink-faint);cursor:not-allowed;background:0 0}.button-quiet{color:var(--ink);background:0 0}.button-quiet:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.portrait{aspect-ratio:4/5;object-fit:cover;object-position:center top;border:1px solid var(--line-strong);filter:grayscale();width:100%}.portrait-wide{aspect-ratio:4/3;object-position:center}.portrait.placeholder{background:var(--accent-tint);font-family:var(--serif);color:var(--ink-faint);place-items:center;font-size:6rem;display:grid}@media (width<=900px){.hero{grid-template-columns:1fr}.hero-portrait{order:-1;max-width:340px}}.rule-heading{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line-strong);padding-bottom:14px;font-size:.78rem;font-weight:600}.credentials,.academics{margin-top:clamp(64px,9vw,120px)}.bullet-list{gap:16px;padding-top:26px;display:grid}.bullet-list li{font-family:var(--serif);color:var(--ink);padding-left:28px;font-size:clamp(1.02rem,1.45vw,1.22rem);line-height:1.6;position:relative}.bullet-list li:before{content:"";background:var(--accent);width:7px;height:7px;position:absolute;top:.62em;left:4px}.bullet-figure{color:var(--accent);font-variant-numeric:tabular-nums;margin-right:8px;font-weight:600}.bullet-list a{color:var(--ink);transition:color var(--calm) var(--ease)}.bullet-list a:hover{color:var(--accent);text-decoration:none}.bullet-arrow{color:var(--ink-faint);transition:transform var(--calm) var(--ease), color var(--calm) var(--ease);margin-left:10px;font-size:.85em;display:inline-block}.bullet-list a:hover .bullet-arrow{color:var(--accent);transform:translate(5px)}@media (width<=560px){.action,.pdf-link{white-space:normal;text-align:center}}.disclaimer-backdrop{z-index:80;animation:fade-in var(--calm) var(--ease) both;background:#fffffff7;place-items:center;padding:clamp(16px,4vw,48px);display:grid;position:fixed;inset:0}.disclaimer{border:1px solid var(--line-strong);background:var(--bg);width:min(760px,100%);max-height:min(88vh,900px);animation:rise-in var(--slow) var(--ease) both;padding:clamp(30px,4vw,54px);position:relative;overflow-y:auto}.disclaimer:before{content:"";background:var(--accent);height:4px;position:absolute;top:-1px;left:-1px;right:-1px}.disclaimer-title{border-bottom:1px solid var(--line);font-family:var(--serif);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);padding-bottom:16px;font-size:clamp(1.2rem,2.2vw,1.55rem);font-weight:600}.disclaimer-body{margin-top:clamp(20px,2.4vw,28px)}.disclaimer-body p{font-family:var(--serif);color:var(--ink-soft);font-size:clamp(.98rem,1.2vw,1.08rem);line-height:1.75}.disclaimer-body p+p{margin-top:16px}.disclaimer-agree{border-top:1px solid var(--line);color:var(--ink);cursor:pointer;align-items:flex-start;gap:12px;margin-top:clamp(24px,2.8vw,34px);padding-top:clamp(20px,2.4vw,26px);font-size:.88rem;display:flex}.disclaimer-agree input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:3px}.disclaimer .button{margin-top:clamp(20px,2.4vw,28px)}@media (width<=560px){.disclaimer .button{text-align:center;width:100%;display:block}}.page-header{border-bottom:1px solid var(--line-strong);margin-bottom:clamp(36px,5vw,64px);padding-bottom:clamp(32px,4vw,52px)}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:.78rem}.page-title-row{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-count{font-family:var(--serif);color:var(--line);font-variant-numeric:tabular-nums;font-size:clamp(2rem,4vw,3.25rem);line-height:1}.page-intro{max-width:62ch;color:var(--ink-soft);margin-top:22px;font-size:1.05rem}.about-grid{grid-template-columns:minmax(280px,400px) minmax(0,1fr);align-items:start;gap:clamp(40px,6vw,96px);display:grid}.about-aside{position:sticky;top:132px}.about-facts{border-top:1px solid var(--line-strong);margin-top:24px;padding-top:20px}.fact-name{font-family:var(--serif);color:var(--ink);letter-spacing:.1em;text-transform:uppercase;font-size:1.5rem}.fact{color:var(--ink-soft);margin-top:6px;font-size:.9rem}.fact-quiet{color:var(--ink-faint);font-size:.85rem}.prose{font-family:var(--serif);color:var(--ink-soft);max-width:66ch;font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.75}.prose+.prose{margin-top:1.4em}.about-section{margin-top:clamp(48px,6vw,80px)}.timeline{margin-top:4px}.timeline li{border-bottom:1px solid var(--line);gap:clamp(20px,3vw,44px);padding:26px 0;display:flex}.timeline-year{font-family:var(--serif);color:var(--accent);font-variant-numeric:tabular-nums;min-width:5ch;font-size:1.3rem}.timeline-body{flex-direction:column;gap:4px;display:flex}.timeline-body strong{font-family:var(--serif);color:var(--ink);font-size:1.25rem;font-weight:600}.timeline-body em{color:var(--ink-faint);font-size:.92rem;font-style:normal}.quote{background:var(--accent-tint);border-left:4px solid var(--accent);margin:28px 0 0;padding:clamp(28px,4vw,48px)}.quote p{font-family:var(--serif);color:var(--ink);font-size:clamp(1.2rem,2vw,1.65rem);font-style:italic;line-height:1.6}.quote cite{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-top:20px;font-size:.85rem;font-style:normal;display:block}.card-block{margin-top:28px}.card-thumb{background:var(--bg);border:1px solid var(--line-strong);cursor:pointer;text-align:left;width:100%;max-width:460px;transition:border-color var(--calm) var(--ease);padding:0;display:block}.card-thumb img{width:100%;display:block}.card-hint{border-top:1px solid var(--line);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);transition:background-color var(--calm) var(--ease), color var(--calm) var(--ease);padding:11px 16px;font-size:.7rem;display:block}.card-thumb:hover{border-color:var(--accent)}.card-thumb:hover .card-hint{background:var(--accent-tint);color:var(--accent)}.card-dialog{opacity:0;max-width:min(96vw,1040px);max-height:92vh;transition:opacity var(--calm) var(--ease), transform var(--calm) var(--ease), overlay var(--calm) allow-discrete, display var(--calm) allow-discrete;background:0 0;border:0;margin:auto;padding:0;overflow:visible;transform:translateY(10px)}.card-dialog[open]{opacity:1;transform:none}@starting-style{.card-dialog[open]{opacity:0;transform:translateY(10px)}}.card-dialog::backdrop{opacity:0;transition:opacity var(--calm) var(--ease), overlay var(--calm) allow-discrete, display var(--calm) allow-discrete;background:#0b0d10bd}.card-dialog[open]::backdrop{opacity:1}@starting-style{.card-dialog[open]::backdrop{opacity:0}}.card-dialog-inner{background:var(--bg);border:1px solid var(--line-strong);flex-direction:column;gap:20px;padding:clamp(16px,2.5vw,28px);display:flex}.card-full{object-fit:contain;width:100%;max-height:74vh}.post-dialog .card-full{aspect-ratio:auto;object-fit:contain;width:auto;max-width:100%;max-height:min(62vh,640px);margin:0 auto}.post-dialog .card-dialog-inner{gap:16px;max-height:92vh;overflow-y:auto}.post-dialog .card-dialog-actions{justify-content:space-between;align-items:center;gap:16px}.post-dialog-buttons{flex-wrap:wrap;gap:10px;display:flex}.post-dialog-count{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.75rem}.action[disabled]{border-color:var(--line);color:var(--ink-faint);cursor:not-allowed;background:0 0}.action[disabled]:hover{border-color:var(--line);color:var(--ink-faint);background:0 0}@media (width<=560px){.post-dialog .card-full{max-height:48vh}.post-dialog .card-dialog-actions{flex-direction:column-reverse;align-items:stretch}.post-dialog-buttons{justify-content:space-between}}.card-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}@media (width<=900px){.about-grid{grid-template-columns:1fr}.about-aside{max-width:320px;position:static}}.filter{align-items:center;gap:20px;margin-bottom:8px;display:flex}.filter input{border:1px solid var(--line-strong);background:var(--bg);flex:1;max-width:460px;padding:15px 18px}.filter input::placeholder{color:var(--ink-faint)}.filter-count{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.8rem}.pub-list{border-top:1px solid var(--line)}.pub{border-bottom:1px solid var(--line)}.pub-row{transition:background-color var(--calm) var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:clamp(20px,3.5vw,52px);padding:clamp(28px,3.5vw,44px) 4px;display:grid}.pub:hover .pub-row,.pub.is-open .pub-row{background:var(--accent-tint)}.pub-index{font-family:var(--serif);color:var(--accent);font-variant-numeric:tabular-nums;padding-top:4px;font-size:clamp(1.1rem,1.8vw,1.6rem)}.pub-text h2{max-width:44ch;margin-bottom:12px;font-size:clamp(1.25rem,2.2vw,1.85rem);line-height:1.3}.meta{color:var(--ink-soft);font-size:.9rem}.meta-quiet{color:var(--ink-faint);margin-top:2px;font-size:.85rem}.pub-actions{align-items:center;gap:10px;padding-top:4px;display:flex}.action{white-space:nowrap;border:1px solid var(--ink);background:var(--ink);color:var(--bg);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background-color var(--calm) var(--ease), border-color var(--calm) var(--ease), color var(--calm) var(--ease);padding:12px 22px;font-size:.75rem;display:inline-block}.action:hover{background:var(--accent);border-color:var(--accent);color:var(--bg);text-decoration:none}.action-quiet{color:var(--ink);background:0 0}.action-quiet:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.action.is-pending{border-style:dashed;border-color:var(--line);color:var(--ink-faint);cursor:default;background:0 0}@media (width<=820px){.pub-row{grid-template-columns:auto minmax(0,1fr)}.pub-actions{grid-column:2;padding-top:18px}}.preview{background:var(--accent-tint);animation:settle-in var(--slow) var(--ease) both;padding:0 4px clamp(28px,3.5vw,44px)}.preview-frame{border:1px solid var(--line-strong);background:var(--bg);height:min(78vh,900px)}.preview-frame iframe{border:0;width:100%;height:100%;display:block}.preview-note{color:var(--ink-faint);margin-top:14px;font-size:.85rem}.book-list{border-top:1px solid var(--line)}.book{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) clamp(150px,19vw,215px);column-gap:clamp(20px,3vw,44px);padding:clamp(30px,4vw,52px) 0;display:grid}.book-head{grid-area:1/1}.book-aside{grid-area:1/2;align-self:start}.book-body{grid-area:2/1/auto/-1}.book-title{text-indent:-1.9em;padding-left:1.9em;font-size:clamp(1.3rem,2.2vw,1.75rem);line-height:1.35}.book-index{color:var(--accent);font-variant-numeric:tabular-nums;margin-right:.7em}.book-head .meta{margin-top:12px}.book-head .meta+.meta{margin-top:4px}.book-credits{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:14px;margin-top:clamp(20px,2.4vw,28px);padding:clamp(18px,2vw,24px) 0;display:grid}.book-credits>div{grid-template-columns:minmax(120px,150px) minmax(0,1fr);gap:4px 20px;display:grid}.book-credits dt{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);padding-top:4px;font-size:.68rem;font-weight:600}.book-credits dd{margin:0}.book-credits dd p+p{margin-top:10px}.book-credits dd strong{font-family:var(--serif);color:var(--ink);font-size:1.08rem;font-weight:600;display:block}.book-credits dd span{color:var(--ink-faint);margin-top:2px;font-size:.85rem;display:block}.book-price{font-family:var(--serif);text-align:center;color:var(--ink);margin-top:14px;font-size:clamp(1.15rem,1.6vw,1.35rem)}.book-actions{flex-wrap:wrap;gap:12px;margin-top:clamp(20px,2.4vw,28px);display:flex}.cover-thumb{border:1px solid var(--line-strong);background:var(--accent-tint);cursor:pointer;text-align:left;width:100%;transition:border-color var(--calm) var(--ease);padding:0;display:block}.cover-thumb img{width:100%;display:block}.cover-hint{border-top:1px solid var(--line);letter-spacing:.2em;text-transform:uppercase;text-align:center;color:var(--ink-faint);transition:background-color var(--calm) var(--ease), color var(--calm) var(--ease);padding:10px 14px;font-size:.68rem;display:block}.cover-thumb:hover{border-color:var(--accent)}.cover-thumb:hover .cover-hint{background:var(--accent-tint);color:var(--accent)}@media (width<=760px){.book{grid-template-columns:minmax(0,1fr)}.book-aside{grid-area:1/1;width:min(220px,62%);margin:0 auto clamp(22px,3.2vw,32px)}.book-head{grid-area:2/1}.book-body{grid-area:3/1}.book-credits>div{grid-template-columns:1fr}.book-actions{gap:10px;display:grid}}.book-actions .action,.book-actions .pdf-link{white-space:normal;text-align:center;max-width:100%}.description{font-family:var(--serif);color:var(--ink-soft);margin-top:18px;font-size:clamp(1rem,1.3vw,1.1rem);line-height:1.7}.pdf-link{white-space:nowrap;border:1px solid var(--ink);background:var(--ink);color:var(--bg);letter-spacing:.14em;text-transform:uppercase;transition:background-color var(--calm) var(--ease), border-color var(--calm) var(--ease), color var(--calm) var(--ease);padding:12px 22px;font-size:.75rem;display:inline-block}.pdf-link:hover{background:var(--accent);border-color:var(--accent);text-decoration:none}.pdf-link.is-pending{border-style:dashed;border-color:var(--line);color:var(--ink-faint);background:0 0}.post-controls{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-bottom:clamp(24px,3vw,34px);display:flex}.segment{border:1px solid var(--line-strong);flex-wrap:wrap;display:flex}.segment button{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;transition:background-color var(--calm) var(--ease), color var(--calm) var(--ease);background:0 0;border:0;padding:11px 20px;font-size:.72rem}.segment button+button{border-left:1px solid var(--line)}.segment button:hover{background:var(--accent-tint);color:var(--accent)}.segment button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.segment-quiet{border-color:var(--line)}.segment-quiet button[aria-pressed=true]{background:var(--accent);color:var(--bg)}.post-grid{grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:clamp(18px,2.2vw,30px);display:grid}.post-open{border:1px solid var(--line-strong);background:var(--accent-tint);cursor:pointer;width:100%;transition:border-color var(--calm) var(--ease);padding:0;display:block;overflow:hidden}.post-open img,.post-open .media-placeholder{aspect-ratio:1;object-fit:cover;width:100%;transition:transform var(--slow) var(--ease)}.post-open:hover img{transform:scale(1.04)}.post-open:hover{border-color:var(--accent)}.post-body{padding-top:16px}.post-grid .caption{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.post-dialog-text .caption{max-width:70ch}.post-body .meta{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.78rem}.caption{font-family:var(--serif);color:var(--ink);margin-top:10px;font-size:1.2rem;line-height:1.5}.media-placeholder{aspect-ratio:4/3;width:100%;color:var(--ink-faint);place-items:center;display:grid}.book .media-placeholder{aspect-ratio:3/4;border:1px solid var(--line-strong);background:var(--accent-tint)}.media-placeholder-mark{opacity:.5;font-size:2.5rem}.state{border:1px dashed var(--line);color:var(--ink-faint);align-items:center;gap:12px;padding:40px;display:flex}.state-error{border-style:solid;border-color:var(--accent);color:var(--accent)}.spinner{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex:none;width:15px;height:15px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.site-footer{border-top:1px solid var(--line-strong);background:var(--bg)}.site-footer-inner{max-width:var(--page);padding:clamp(48px, 6vw, 72px) var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:40px;margin:0 auto;display:flex}.footer-name{font-family:var(--serif);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-size:1.3rem}.footer-note{color:var(--ink-faint);margin-top:8px;font-size:.82rem}.footer-links{flex-direction:column;gap:10px;display:flex}.footer-links a{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);transition:color var(--calm) var(--ease);font-size:.82rem}.footer-links a:hover{color:var(--accent)}.footer-contact{text-align:right}.footer-contact .footer-note{margin-top:0}@media (width<=640px){.footer-contact{text-align:left}}
