.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/cormorant-garamond-light.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/cormorant-garamond-light-italic.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-regular.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-italic.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/eb-garamond-medium.woff2) format("woff2")}:root{--font: "Cormorant Garamond", "Garamond", "Times New Roman", serif;--font-prose: "EB Garamond", "Cormorant Garamond", Georgia, "Times New Roman", serif;--wall-bg: #73716c;--wall-glow: #807e78;--ink: #d6d4ce;--nav-fg: #f4f2ec;--prose-ink: #fdfcf9;--detail-bg: #0a0a0a;--focus-ring: color-mix(in oklab, var(--ink) 80%, transparent);--print-shadow: 0 12px 32px -10px rgb(0 0 0 / .45), 0 2px 8px -4px rgb(0 0 0 / .3);--print-shadow-hover: 0 22px 48px -12px rgb(0 0 0 / .55), 0 4px 12px -6px rgb(0 0 0 / .38);--gap: clamp(20px, 3vw, 56px);--fs--2: .694rem;--fs--1: .833rem;--fs-0: 1rem;--fs-1: 1.2rem;--fs-2: 1.44rem}@layer reset,base,components;@layer reset{*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}}@layer base{html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font);font-weight:300;font-synthesis:none;font-kerning:normal;font-variant-ligatures:common-ligatures contextual;text-rendering:optimizeLegibility;background-color:var(--wall-bg);background-image:linear-gradient(180deg,var(--wall-glow) 0%,var(--wall-bg) 45dvh);background-attachment:fixed;background-repeat:no-repeat;color:var(--ink);overflow-x:hidden;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}body:has(.detail-overlay[open]){overflow:hidden}}@layer components{.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.4rem 2rem 2.2rem;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#0000009e,#00000080 45%,#0000);transition:opacity .4s ease}.site-header.is-hidden{opacity:0;pointer-events:none}.site-name{font-size:var(--fs--1);font-weight:300;letter-spacing:.25em;text-transform:uppercase;color:var(--nav-fg);text-decoration:none;text-shadow:0 1px 3px rgb(0 0 0 / .55);padding-block:.4rem;&:focus-visible{outline:2px solid currentColor;outline-offset:4px}}.site-nav{display:flex;gap:2rem;& a{font-size:var(--fs--2);font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:var(--nav-fg);text-decoration:none;text-shadow:0 1px 3px rgb(0 0 0 / .55);opacity:.85;padding-block:.4rem;transition:opacity .3s;&:hover{opacity:1}&.is-current{opacity:1;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;text-decoration-color:color-mix(in oklab,currentColor 55%,transparent)}&:focus-visible{outline:2px solid currentColor;outline-offset:4px;opacity:1}}}.gallery-wall{padding:calc(72px + var(--gap)) var(--gap) calc(var(--gap) * 1.5);max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:var(--gap)}.gallery-row{display:flex;gap:var(--gap);align-items:flex-start}.gallery-row--center{margin-inline:auto;justify-content:center}.gallery-item{flex:1 1 0;min-width:0;cursor:pointer;overflow:hidden;display:flex;align-items:start;justify-content:center;content-visibility:auto;contain-intrinsic-size:auto 400px;opacity:0;box-shadow:var(--print-shadow);transition:opacity 1s ease,box-shadow .5s ease,transform .5s ease;& img{display:block;width:100%;max-height:80dvh;height:auto;object-fit:contain}&.is-visible{opacity:1}&.is-early{opacity:1}&:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}}@media(hover:hover){.gallery-item:hover{transform:translateY(-3px);box-shadow:var(--print-shadow-hover)}}.gallery-row--hero .gallery-item img{max-height:78dvh}.detail-overlay{border:none;padding:0;max-width:100dvw;max-height:100dvh;width:100dvw;height:100dvh;flex-direction:column;align-items:center;justify-content:center;background:var(--detail-bg);cursor:default;overscroll-behavior:contain;&[open]{display:flex;opacity:1;transition:opacity .6s ease,background-color .8s ease;@starting-style{opacity:0}}&::backdrop{background:transparent}}.detail-image-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:3rem 2rem 5rem}.detail-img{position:absolute;inset:0;margin:auto;max-width:min(85dvw,800px);max-height:75dvh;width:auto;height:auto;object-fit:contain;opacity:0;transition:opacity .8s ease;pointer-events:none;&.is-active.is-loaded{opacity:1;pointer-events:auto}}.detail-nav-prev,.detail-nav-next{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;position:absolute;top:0;bottom:0;width:35%;cursor:pointer;z-index:5}.detail-nav-prev{left:0;cursor:w-resize}.detail-nav-next{right:0;cursor:e-resize}.detail-close{appearance:none;background:none;border:none;position:absolute;top:.8rem;right:1rem;color:var(--nav-fg);font-size:var(--fs-2);font-weight:300;opacity:.6;cursor:pointer;z-index:10;padding:.6rem;min-width:44px;min-height:44px;line-height:1;display:none}.detail-close:focus-visible{outline:2px solid var(--nav-fg);outline-offset:2px;opacity:1}.detail-nav-prev:focus-visible,.detail-nav-next:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}@media(width<=768px){.detail-close{display:block}}.contact-links{display:flex;gap:2rem;margin-top:1.5rem;& a{font-size:var(--fs--2);font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:inherit;text-decoration:none;opacity:1;padding-block:.6rem;transition:opacity .3s,color .3s;&:hover{color:#fff}&:focus-visible{outline:2px solid currentColor;outline-offset:4px;opacity:1}}}.site-footer{display:flex;flex-direction:column;align-items:center;text-align:center;padding:calc(var(--gap) * 1.6) var(--gap) calc(var(--gap) * 1.8);border-top:1px solid color-mix(in oklab,var(--ink) 12%,transparent);margin-top:var(--gap)}.footer-byline{font-family:var(--font);font-size:var(--fs--1);font-weight:300;letter-spacing:.25em;text-transform:uppercase;color:var(--nav-fg);text-decoration:none;padding-block:.4rem;transition:opacity .3s;&:hover{opacity:.82}&:focus-visible{outline:2px solid currentColor;outline-offset:4px}}.footer-note{font-family:var(--font-prose);font-size:var(--fs--2);font-style:italic;letter-spacing:.02em;color:var(--ink);max-width:42ch;margin-top:.5rem}.footer-social{justify-content:center;flex-wrap:wrap;margin-top:1.2rem}.page-content{max-width:640px;margin:0 auto;padding:calc(80px + 2rem) 2rem 4rem;color:var(--prose-ink);font-family:var(--font-prose);font-weight:400;.invocation{font-size:clamp(var(--fs-0),.9rem + .5vw,var(--fs-1));font-style:italic;line-height:1.8;margin-bottom:3rem}.verse{margin-bottom:1.5rem;& p{font-weight:400;font-size:clamp(var(--fs-1),1rem + .7vw,var(--fs-2));line-height:1.7;text-wrap:pretty;margin-bottom:1.2em}}& p{font-weight:400;font-size:clamp(var(--fs-1),1rem + .7vw,var(--fs-2));line-height:1.7;text-wrap:pretty;margin-bottom:1.5rem}.about-signature{margin-top:5rem;font-family:var(--font);font-size:var(--fs-0);font-style:italic;letter-spacing:.05em}}.also-building{margin-top:4.5rem}.section-label{font-family:var(--font);font-size:var(--fs--1);font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--prose-ink);margin-bottom:1.6rem}.project-list{list-style:none;display:flex;flex-direction:column;gap:1.15rem;& li{display:flex;flex-direction:column;gap:.3rem}& a{width:fit-content;font-family:var(--font);font-size:var(--fs-1);font-weight:300;letter-spacing:.03em;color:var(--prose-ink);text-decoration:none;padding-block:.15rem;transition:color .3s;&:hover{color:#fff;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;text-decoration-color:color-mix(in oklab,currentColor 55%,transparent)}&:focus-visible{outline:2px solid currentColor;outline-offset:4px}}.project-desc{font-family:var(--font-prose);font-size:var(--fs-0);font-style:italic;line-height:1.5;letter-spacing:.01em;color:var(--prose-ink)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.gallery-item{opacity:1}}@media(prefers-contrast:more){:root{--wall-bg: #595855;--wall-glow: #5f5e5a;--prose-ink: #ffffff}.page-content .invocation,.page-content .about-signature,.contact-links a,.site-nav a{opacity:1}}@media(width<=768px){.site-header{padding:1rem 1.2rem}.site-name{font-size:11px}.site-nav{gap:1.2rem;& a{font-size:10px}}.gallery-wall{padding:calc(48px + var(--gap)) var(--gap) var(--gap)}.gallery-row,.gallery-row--center{flex-direction:column;max-width:none}.gallery-row>.gallery-item{width:100%;flex-basis:auto}.detail-image-wrap{padding:1rem .5rem 3rem}.detail-img{max-width:98dvw;max-height:80dvh}.detail-nav-prev,.detail-nav-next{width:45%}.page-content{padding:calc(60px + 1.5rem) 1.2rem 3rem}}}
