@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--cream:#f7f2e7;--black:#111;--content-width:690px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--cream);color:var(--black);font:400 12px/1.8 'IBM Plex Mono','Courier New',monospace;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--black);outline-offset:3px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin-top:0}
.skip{position:absolute;top:-100px;left:22px;padding:8px 12px;background:var(--black);color:var(--cream);z-index:9}.skip:focus{top:10px}
.site-header{display:flex;align-items:baseline;flex-wrap:wrap;gap:0;padding:28px 32px 0}
.site-name{font-weight:500;font-size:16px;line-height:1.45;margin-right:20px;white-space:nowrap}
.site-descriptor{font-size:12px;line-height:1.5;white-space:nowrap;margin-right:42px}
.site-nav{display:flex;gap:7px;align-items:center}
.site-nav a{display:inline-block;border:1px solid var(--black);padding:5px 12px;font-size:11px;line-height:1.5;min-width:65px;text-align:center;transition:background .15s,color .15s}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--black);color:var(--cream)}
.empty-home{min-height:calc(100vh - 85px)}
.content-page{margin:85px 32px 110px;max-width:var(--content-width)}
.page-heading{margin-bottom:38px}
.eyebrow,.work-index{font-size:10px;letter-spacing:.035em}
.page-heading h1,.text-page h1,.case-page h1{font:500 25px/1.4 'IBM Plex Mono','Courier New',monospace;letter-spacing:-.045em;margin:10px 0 14px}
.page-heading p,.text-page p{font-size:12px;line-height:1.85;max-width:570px}
.work-feed{display:flex;flex-direction:column;gap:55px}
.work-entry{display:block;max-width:570px}
.work-thumb{height:265px;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--black);background:var(--cream);margin-bottom:14px}
.work-thumb img{width:100%;height:100%;object-fit:contain;filter:grayscale(1) contrast(1.06);mix-blend-mode:multiply}
.work-thumb--jolly img{object-fit:cover;object-position:center 20%}
.work-index{display:block}
.work-entry h2{font:500 17px/1.5 'IBM Plex Mono','Courier New',monospace;margin:3px 0 2px;letter-spacing:-.03em}
.work-entry h2 span{font-size:14px}
.work-entry p{margin:0;font-size:11px}
.work-entry:hover h2{text-decoration:underline;text-underline-offset:3px}
.text-page h1{margin-bottom:26px}
.text-page>p:not(.eyebrow){margin-bottom:19px}
.secondary-note{font-size:11px!important;margin-top:35px}
.back-link{font-size:11px;text-decoration:underline;text-underline-offset:3px;display:inline-block;margin-bottom:42px}
.case-page h1{margin-top:13px;margin-bottom:17px}
.case-intro{font-size:12px;line-height:1.85;max-width:620px;margin-bottom:20px}
.case-tags{border-top:1px solid var(--black);border-bottom:1px solid var(--black);padding:10px 0;display:flex;flex-wrap:wrap;gap:8px 25px;font-size:10px;margin-bottom:35px}
.case-figure{margin:0 0 35px;max-width:570px}
.case-media{border:1px solid var(--black);background:var(--cream);height:320px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.case-media img{height:100%;width:100%;object-fit:contain;filter:grayscale(1) contrast(1.07);mix-blend-mode:multiply}
.case-figure figcaption{font-size:10px;margin-top:8px}
.case-copy{max-width:570px;margin:46px 0}
.case-copy h2{font:500 17px/1.5 'IBM Plex Mono','Courier New',monospace;letter-spacing:-.035em;margin-bottom:12px}
.case-copy p{font-size:12px;line-height:1.8}
.case-end{border-top:1px solid var(--black);padding:20px 0 0;display:flex;justify-content:space-between;gap:20px;font-size:11px;max-width:570px}
.case-end a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1100px){.content-page{margin-left:32px}}
@media(max-width:860px){.site-header{row-gap:12px}.site-name{margin-right:16px}.site-descriptor{margin-right:26px}}
@media(max-width:650px){
 .site-header{padding:23px 20px 0;display:flex;align-items:flex-start;flex-direction:column;gap:6px}
 .site-name{font-size:16px;margin-right:0}
 .site-descriptor{font-size:12px;margin-right:0}
 .site-nav{margin-top:15px;gap:7px;flex-wrap:wrap}
 .site-nav a{font-size:11px}
 .empty-home{min-height:calc(100vh - 145px)}
 .content-page{margin:55px 20px 80px}
 .page-heading h1,.text-page h1,.case-page h1{font-size:23px}
 .work-thumb{height:230px}
 .case-media{height:250px}
 .work-feed{gap:42px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-nav a{transition:none}}

/* Centered cream-and-black layout; preserve existing word and character spacing */
.site-header{justify-content:center}
.content-page{margin-left:auto;margin-right:auto}
@media(min-width:1100px){.content-page{margin-left:auto;margin-right:auto}}
/* The home page is intentionally just one centered grouping. */
body:has(.empty-home){display:flex;align-items:center;justify-content:center;min-height:100vh}
body:has(.empty-home) .site-header{padding:20px 24px;justify-content:center}
body:has(.empty-home) .empty-home{display:none}
.work-page .page-heading,.text-page{text-align:center}
.work-page .page-heading p,.text-page>p{margin-left:auto;margin-right:auto}
.work-entry{margin-left:auto;margin-right:auto}
.work-entry .work-index,.work-entry h2,.work-entry p{text-align:center}
.case-page .back-link{display:block;text-align:center}
.case-page>.eyebrow,.case-page>h1,.case-page>.case-intro{text-align:center}
.case-page>.case-intro{margin-left:auto;margin-right:auto}
.case-tags{justify-content:center}
.case-figure,.case-copy{margin-left:auto;margin-right:auto}
.case-figure figcaption,.case-copy{text-align:center}
.case-end{margin-left:auto;margin-right:auto}
.work-thumb img,.case-media img{filter:none;mix-blend-mode:normal}
@media(max-width:650px){
 .site-header{align-items:center;text-align:center}
 body:has(.empty-home) .site-header{align-items:center;padding:20px}
 .content-page{margin:55px auto 80px;padding:0 20px}
}

/* Wedding stationery: full local collection (do not deploy without access protection) */
.wedding-collection{max-width:690px}
.private-notice{max-width:570px;margin:10px auto 43px;padding:13px 16px;border:1px solid var(--black);font-size:10px;line-height:1.75;text-align:left}
.private-notice strong{font-weight:500}
.wedding-group{margin:0 0 50px}
.wedding-group>h2{font:500 16px/1.5 'IBM Plex Mono','Courier New',monospace;text-align:center;letter-spacing:-.02em;margin:0 auto 24px}
.wedding-full-figure{margin-bottom:32px}
.wedding-full-media{height:auto;min-height:230px;max-height:none;aspect-ratio:auto;padding:16px}
.wedding-full-media img{height:auto;width:auto;max-width:100%;max-height:720px;object-fit:contain}
.pdf-frame{height:530px;border:1px solid var(--black);background:var(--cream)}
.pdf-frame iframe{display:block;width:100%;height:100%;border:0;background:var(--cream)}
.wedding-pdf figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.pdf-open{text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.private-notice{margin-bottom:35px}.wedding-group{margin-bottom:40px}.wedding-full-media{min-height:160px;padding:10px}.pdf-frame{height:410px}.wedding-group>h2{font-size:14px}}

/* RSVP: display postcard artwork cleanly, without the embedded PDF viewer */
.rsvp-clean{border:0;background:transparent;padding:0;min-height:0}
.rsvp-clean img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.rsvp-caption{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* Match the simple black postcard frame without a PDF-viewer background. */
.rsvp-clean.rsvp-bordered{border:1px solid var(--black);padding:0;background:transparent}

/* Web design case-study thumbnail placeholder: replaced with original screenshot later */
.web-work-thumb{background:var(--cream);color:var(--black)}
.web-work-preview{font-size:19px;line-height:1.6;text-align:center;letter-spacing:-.035em;padding:20px}

/* Shenandoah Web Studio case study */
.shenandoah-case .case-figure{max-width:650px}
.shenandoah-media{height:auto;min-height:0;overflow:hidden;padding:0;background:var(--cream)}
.shenandoah-media img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.shenandoah-logo,.shenandoah-quilt{max-width:430px;margin-left:auto;margin-right:auto}
.shenandoah-art{max-width:650px}
.shenandoah-screen{max-width:650px}
.case-live{max-width:570px;margin:18px auto 45px;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 30px;font-size:11px}
.case-live a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.shenandoah-media{height:auto}.shenandoah-logo,.shenandoah-quilt{max-width:100%}}

/* Shenandoah web design case study */
.web-work-thumb{background:var(--cream)}
.web-work-thumb img{object-fit:contain;padding:12px}
.web-case-page .case-figure{max-width:640px}
.web-case-page .case-media.web-media{height:auto;min-height:230px;max-height:none;padding:10px}
.web-case-page .web-media img{max-height:none;width:100%;height:auto;object-fit:contain}
.web-case-page .web-identity img{width:min(100%,420px)}
.web-case-page .web-landscape img{width:100%}
.web-case-page .case-copy{max-width:610px}
.web-live-link{text-align:center;margin:48px auto 45px;font-size:12px}
.web-live-link a{border:1px solid var(--black);padding:11px 20px;display:inline-block}
.web-live-link a:hover{background:var(--black);color:var(--cream)}
@media(max-width:650px){.web-case-page .case-media.web-media{min-height:0}.web-case-page .web-identity img{width:100%}}

/* Shenandoah Web Studio — portfolio identity board */
.sws-board{width:min(960px,calc(100vw - 40px));margin:65px 0 80px 50%;transform:translateX(-50%);background:#f3efe5;color:#172b24;border:1px solid #172b24;padding:38px 38px 24px;font-family:Arial,sans-serif;font-size:14px;line-height:1.5;text-align:left}
.sws-board *{box-sizing:border-box}
.sws-board-heading,.sws-board-footer,.sws-board-label{display:flex;justify-content:space-between;gap:15px;align-items:center;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em}
.sws-board-heading{padding:0 0 15px;border-bottom:1px solid #172b24;font-weight:700}
.sws-board-intro{padding:42px 0 36px;max-width:720px}
.sws-board-index{font:700 11px/1.5 Arial,sans-serif;color:#a64f3d;letter-spacing:.15em;margin:0 0 14px}
.sws-board-intro h2{font:normal clamp(49px,6.3vw,78px)/.99 Georgia,serif;letter-spacing:-.045em;margin:0 0 18px;color:#172b24}
.sws-board-intro h2 em{color:#a64f3d;font-style:italic}
.sws-board-intro>p:last-child{max-width:535px;font:14px/1.65 Arial,sans-serif;margin:0}
.sws-board-identity{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
.sws-board figure{margin:0}
.sws-board-identity figure{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:23px;background:#fffdf8}
.sws-board-identity img{width:100%;max-height:380px;object-fit:contain}
.sws-board-identity .sws-board-mark img{max-width:290px}
.sws-board figcaption{align-self:stretch;text-align:left;font-size:10px;letter-spacing:.07em;padding-top:14px}
.sws-board-label{border-top:1px solid #172b24;padding:12px 0;margin:40px 0 11px;font-weight:700}
.sws-swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.sws-swatches>div{min-width:0}
.sws-swatch{display:block;height:94px;border:1px solid #172b2455}
.sws-swatches strong,.sws-swatches small{display:block;font-family:Arial,sans-serif;font-size:12px;line-height:1.3;margin-top:7px;font-weight:400}
.sws-swatches small{font-size:10px;margin-top:4px;color:#47564b;letter-spacing:.04em}
.sws-board-type{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}
.sws-board-type>div{background:#fffdf8;padding:25px 23px;min-height:220px}
.sws-board-type span{font-size:10px;letter-spacing:.13em;font-weight:700}
.sws-type-serif strong{display:block;font:normal clamp(35px,4.6vw,59px)/1.03 Georgia,serif;letter-spacing:-.05em;margin:24px 0 15px}
.sws-type-serif em{color:#a64f3d;font-weight:400}
.sws-type-sans strong{display:block;font:normal 22px/1.25 Arial,sans-serif;margin:32px 0 21px;letter-spacing:-.04em}
.sws-board-type p{font:12px/1.6 Arial,sans-serif;max-width:330px;margin:0}
.sws-board-landscape{background:#fffdf8;padding:12px}
.sws-board-landscape img{width:100%;height:auto;max-height:400px;object-fit:cover;object-position:center 55%}
.sws-board-landscape figcaption{padding:10px 4px 2px}
.sws-board-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}
.sws-board-principles>div{border-top:1px solid #bfc7ba;padding-top:11px}
.sws-board-principles strong{font:700 12px Arial,sans-serif}
.sws-board-principles p{font:12px/1.6 Arial,sans-serif;margin:8px 0 0}
.sws-board-footer{margin-top:35px;border-top:1px solid #172b24;padding-top:15px;font-weight:700}
@media(max-width:650px){.sws-board{width:calc(100vw - 24px);padding:20px 17px;margin:48px 0 50px 50%}.sws-board-heading,.sws-board-footer,.sws-board-label{font-size:8px}.sws-board-intro{padding:29px 0}.sws-board-intro h2{font-size:43px}.sws-board-identity{grid-template-columns:1fr 1fr;gap:7px}.sws-board-identity figure{padding:10px}.sws-board-identity img{max-height:215px}.sws-board-identity figcaption{font-size:8px}.sws-swatches{gap:5px}.sws-swatch{height:62px}.sws-swatches strong{font-size:9px}.sws-swatches small{font-size:8px}.sws-board-type{grid-template-columns:1fr;gap:7px}.sws-board-type>div{min-height:0;padding:19px}.sws-type-serif strong{font-size:43px}.sws-type-sans strong{margin:20px 0}.sws-board-principles{grid-template-columns:1fr;gap:10px}.sws-board-label{margin-top:27px}.sws-board-footer{flex-wrap:wrap}}

.sws-board-standalone-link{text-align:center;font-size:11px;margin:-50px auto 62px}.sws-board-standalone-link a{text-decoration:underline;text-underline-offset:3px}

/* Condensed Shenandoah case study — preserve the brand board */
.web-case-condensed>.web-case-feature{margin-bottom:35px}
.web-case-condensed>.sws-board{margin-top:34px;margin-bottom:35px}
.web-case-condensed>.sws-board-standalone-link{margin:-12px auto 28px}
.sws-case-note{max-width:570px;margin:0 auto;text-align:center}
.sws-case-note p{font-size:12px;line-height:1.85;margin:0}
.web-case-condensed>.web-live-link{margin:30px auto 40px}
@media(max-width:650px){.web-case-condensed>.sws-board{margin-top:22px;margin-bottom:30px}.web-case-condensed>.sws-board-standalone-link{margin:0 auto 26px}}

/* Birth Sister Elisa — editorial case study and brand board */
.elisa-case .elisa-site-hero{max-width:640px;margin-bottom:42px}
.elisa-site-hero .case-media{height:auto;max-height:none;padding:8px}
.elisa-site-hero img{width:100%;height:auto;object-fit:contain}
.elisa-brand-board{width:min(860px,calc(100vw - 40px));margin:40px 0 50px 50%;transform:translateX(-50%);padding:34px;background:#F7F1E7;border:1px solid #79504F;color:#384A3F;text-align:left;font:14px/1.6 Arial,sans-serif}
.elisa-brand-board *{box-sizing:border-box}
.elisa-board-top,.elisa-board-label,.elisa-board-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;font:600 10px/1.4 Arial,sans-serif;letter-spacing:.12em}
.elisa-board-top{border-bottom:1px solid #79504F;padding-bottom:12px}
.elisa-board-heading{padding:38px 0 30px;max-width:650px}
.elisa-board-heading>span,.elisa-board-small{font:700 10px Arial,sans-serif;letter-spacing:.12em;color:#79504F}
.elisa-board-heading h2{font:normal clamp(45px,6vw,77px)/1.03 Georgia,serif;letter-spacing:-.04em;margin:13px 0 16px;color:#79504F}
.elisa-board-heading em{font-weight:400}
.elisa-board-heading p{font:15px/1.65 Arial,sans-serif;max-width:520px;margin:0}
.elisa-board-feature{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.elisa-board-feature figure{margin:0;background:#fffaf2;padding:12px;min-width:0}
.elisa-board-feature figure img{height:430px;width:100%;object-fit:cover}
.elisa-brand-board figcaption{font:10px/1.5 Arial,sans-serif;letter-spacing:.08em;margin-top:11px}
.elisa-board-side{background:#E8DBD2;padding:28px 24px;display:flex;flex-direction:column;justify-content:center}
.elisa-board-side p{font:14px/1.65 Arial,sans-serif;margin:18px 0 0}
.elisa-board-side strong{font:normal 29px/1.25 Georgia,serif;color:#79504F}
.elisa-board-label{border-top:1px solid #79504F;margin:38px 0 14px;padding-top:12px;color:#79504F}
.elisa-swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.elisa-swatches>div{min-width:0}
.elisa-swatches i{display:block;height:92px;border:1px solid #79504F55}
.elisa-swatches strong,.elisa-swatches small{font:12px/1.4 Arial,sans-serif;display:block;margin-top:6px}
.elisa-swatches small{font-size:10px;margin-top:2px;color:#79504F}
.elisa-type-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
.elisa-type-grid>div{background:#fffaf2;padding:24px;min-width:0}
.elisa-type-grid span{font:700 10px Arial,sans-serif;letter-spacing:.1em}
.elisa-type-grid strong{display:block;font:normal clamp(35px,4vw,54px)/1.04 Georgia,serif;letter-spacing:-.04em;margin:27px 0 20px;color:#79504F}
.elisa-type-grid strong em{font-weight:400}
.elisa-type-grid strong.elisa-sans-sample{font:normal 24px/1.25 Arial,sans-serif;letter-spacing:-.02em;color:#384A3F;margin:29px 0 20px}
.elisa-type-grid p{font:12px/1.6 Arial,sans-serif;margin:0}
.elisa-landscape-photo{margin:0;background:#fffaf2;padding:11px}
.elisa-landscape-photo img{width:100%;height:auto;max-height:435px;object-fit:cover}
.elisa-board-footer{border-top:1px solid #79504F;margin-top:30px;padding-top:13px;color:#79504F}
.elisa-case-summary{max-width:570px;margin:0 auto 42px;text-align:center}
.elisa-case-summary p{font-size:12px;line-height:1.8}
.elisa-interaction{text-align:center;max-width:570px;margin:15px auto 60px;padding-top:23px;border-top:1px solid var(--black)}
.elisa-interaction h2{font:500 17px/1.5 'IBM Plex Mono','Courier New',monospace;margin:12px 0}
.elisa-interaction p{max-width:430px;margin:0 auto 19px;font-size:11px}
.elisa-sample-button{border:0;background:#384A3F;color:#F7F1E7;font:600 13px Arial,sans-serif;cursor:pointer;padding:15px 23px;transition:background .15s ease}
.elisa-sample-button:hover,.elisa-sample-button:focus-visible{background:#79504F}
.elisa-sample-button span{margin-left:10px}
.elisa-work-thumb img{object-fit:cover;object-position:center 15%}
@media(max-width:650px){.elisa-brand-board{width:calc(100vw - 24px);padding:19px 15px;margin-top:32px}.elisa-board-heading{padding:25px 0}.elisa-board-heading h2{font-size:47px}.elisa-board-feature{grid-template-columns:1fr}.elisa-board-feature figure img{height:310px}.elisa-board-side{padding:18px}.elisa-board-side strong{font-size:24px}.elisa-swatches{gap:5px}.elisa-swatches i{height:57px}.elisa-swatches strong{font-size:9px}.elisa-swatches small{font-size:8px}.elisa-type-grid{grid-template-columns:1fr;gap:8px}.elisa-type-grid>div{padding:19px}.elisa-board-top,.elisa-board-label,.elisa-board-footer{font-size:8px}.elisa-board-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.elisa-sample-button{transition:none}}

/* Updated Birth Sister Elisa case study — actual draft and captured motion */
.elisa-motion-capture{max-width:640px;margin:32px auto 43px;text-align:center}
.elisa-motion-capture h2{font:500 18px/1.5 'IBM Plex Mono','Courier New',monospace;margin:11px 0}
.elisa-motion-capture>p:not(.eyebrow){font-size:12px;line-height:1.8;max-width:560px;margin:0 auto 18px}
.elisa-motion-capture>img{width:100%;height:auto;display:block;border:1px solid var(--black)}
.elisa-motion-capture>small{display:block;font-size:10px;line-height:1.5;margin:10px auto 0;max-width:560px}
.elisa-board-side .elisa-brand-logo{display:block;width:110px;max-width:50%;height:auto;object-fit:contain;margin:0 0 18px}
.elisa-board-feature figure img{object-position:center 35%}
.elisa-draft-link{text-align:center;margin:0 auto 45px;font-size:12px}
.elisa-draft-link a{display:inline-block;padding:11px 18px;border:1px solid var(--black)}
.elisa-draft-link a:hover{color:var(--cream);background:var(--black)}
@media(max-width:650px){.elisa-motion-capture{margin:27px auto 37px}.elisa-board-side .elisa-brand-logo{width:75px}}

/* Personal portfolio contact page */
.contact-details{border-top:1px solid var(--black);max-width:570px;margin-top:38px;padding-top:17px}
.contact-page .contact-label{font-size:10px;letter-spacing:.07em;margin:0 0 10px}
.contact-email{display:inline-block;font-size:15px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-page .contact-location{font-size:11px;margin-top:29px}

/* Selected responsive and interior views: Birth Sister Elisa */
.elisa-site-details{width:min(860px,calc(100vw - 40px));margin:5px 0 52px 50%;transform:translateX(-50%);text-align:left}
.elisa-site-details-heading{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--black);padding-top:13px;margin-bottom:15px;font-size:10px;letter-spacing:.05em}
.elisa-site-details-grid{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.45fr);gap:20px;align-items:start}
.elisa-site-details figure{margin:0;min-width:0}
.elisa-site-details figure img{display:block;width:100%;height:auto;border:1px solid var(--black);object-fit:contain;background:#f7f1e7}
.elisa-site-details figcaption{font-size:10px;line-height:1.6;margin-top:9px;text-align:left}
@media(max-width:650px){.elisa-site-details{width:calc(100vw - 24px);margin-bottom:35px}.elisa-site-details-heading{font-size:9px}.elisa-site-details-grid{grid-template-columns:minmax(0,1fr);gap:25px}.elisa-mobile-view{max-width:320px;margin:0 auto!important}}

/* Consistent square frames for selected work (all viewport sizes) */
.work-page .work-thumb{width:100%;aspect-ratio:1 / 1;height:auto;min-height:0;border:1px solid var(--black);border-radius:0}
.work-page .work-thumb img{width:100%;height:100%;object-fit:contain}

/* Center all contact information within the page */
.contact-page{text-align:center}
.contact-page .contact-details{margin-left:auto;margin-right:auto;text-align:center}
.contact-page .contact-email{margin-left:auto;margin-right:auto}
/* Optically center the Other Work cover artwork within its square frame. */
.work-page .other-work-thumb img{transform:translate(1%,-1.5%) scale(1.035);transform-origin:center}
