:root{--ink:#070606;--paper:#eee7dc;--red:#bd0920;--gold:#c7aa71;--wine:#24060b}.cinematic-backdrop{background-color:#090606;background-image:radial-gradient(ellipse at 80% 65%,rgba(110,8,22,.18),transparent 65%)}.hero:after{content:none;display:none}.manifesto{grid-template-columns:1fr 2fr;align-items:start}.manifesto>.section-number{color:#38271e;line-height:1.8;margin-top:5px}.discernment-lines{margin-top:65px;border-bottom:0}.discernment-lines p{border-bottom:0}nav a,.menu,.button{font-size:14px}.scroll,.eyebrow,.section-number{font-size:12px}footer{font-size:14px}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:7px}html{scroll-padding-top:90px}@media(max-width:800px){.manifesto{gap:32px}.hero h1{font-size:20vw;line-height:.82}.hero-copy{margin-bottom:125px}.nav .wordmark{font-size:14px}.hero .scroll{max-width:85%;line-height:1.8}.discernment-lines{margin-top:50px}footer{gap:25px}}
.faq-main{padding-top:110px;min-height:85vh}.faq-heading{padding:90px 8vw 70px}.faq-heading h1{font:400 clamp(56px,8vw,110px)/1 Italiana,serif;letter-spacing:-.03em;margin:30px 0 0}.faq-content{padding:0 8vw 120px;max-width:1300px}.faq-content details{border-top:1px solid rgba(199,170,113,.35);padding:28px 0}.faq-content details:last-child{border-bottom:1px solid rgba(199,170,113,.35)}.faq-content summary{cursor:pointer;font:400 clamp(24px,2.5vw,34px)/1.3 Italiana,serif;color:var(--paper);padding-right:25px}.faq-content summary::marker{color:var(--gold);font-size:16px}.faq-content p{font-size:16px;line-height:1.85;color:#c9bfb5;max-width:760px;margin:24px 0 0;padding-left:24px}.faq-content summary:focus-visible{outline:2px solid var(--gold);outline-offset:8px}nav a[aria-current=page]{color:var(--gold)}@media(max-width:800px){.faq-main{padding-top:75px}.faq-heading{padding:65px 24px 50px}.faq-heading h1{font-size:13vw}.faq-content{padding:0 24px 80px}.faq-content p{padding-left:0}.faq-content details{padding:25px 0}}

.frames.sophia-collage{height:1050px;max-width:1320px}.sophia-collage .c1{left:4%;top:40px;width:54%;height:360px;transform:rotate(-5deg);z-index:3}.sophia-collage .c2{right:3%;left:auto;top:80px;width:36%;height:690px;transform:rotate(6deg);z-index:2}.sophia-collage .c3{left:1%;right:auto;top:445px;width:48%;height:420px;transform:rotate(3deg);z-index:4}.sophia-collage .c4{left:40%;top:455px;width:34%;height:550px;transform:rotate(-6deg);z-index:5}.photo-open{border:0;padding:0;margin:0;width:100%;height:100%;display:block;cursor:zoom-in;background:#000}.photo-open:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.sophia-collage img,.sophia-collage figure:hover img{filter:grayscale(1) contrast(1.08);transform:none}#lightbox img{filter:none}.gallery-head>p:last-child{font-size:14px}body:has(#lightbox[open]){overflow:hidden}
@media(max-width:800px){.frames.sophia-collage{height:1450px!important}.sophia-collage .c1{left:0%!important;top:30px!important;width:92%!important;height:245px!important;transform:rotate(-4deg)!important}.sophia-collage .c2{left:30%!important;top:300px!important;width:67%!important;height:490px!important;transform:rotate(6deg)!important}.sophia-collage .c3{left:0%!important;top:750px!important;width:85%!important;height:305px!important;transform:rotate(-3deg)!important}.sophia-collage .c4{left:20%!important;top:1000px!important;width:70%!important;height:430px!important;transform:rotate(5deg)!important}.gallery-head{gap:20px;align-items:center}}

.rules-link{display:inline-block;font-size:14px;letter-spacing:.12em;text-transform:uppercase;text-decoration:underline;text-underline-offset:6px}.rules-content article{border-top:1px solid rgba(199,170,113,.35);padding:28px 0}.rules-content h2{font:400 clamp(24px,2.5vw,34px)/1.3 Italiana,serif;color:var(--paper);margin:0}.rules-content article p{padding-left:0}.rules-content>.rules-link,.rules-content>p{margin-top:30px}
/* Keep every link within the site's palette, including visited links. */
a:where(:link,:visited){color:inherit}
.rules-link:link,.rules-link:visited{color:var(--gold)}
.manifesto .rules-link:link,.manifesto .rules-link:visited{color:#850819}
.rules-link:hover,.rules-link:active{color:var(--red)}
.manifesto .rules-link:hover,.manifesto .rules-link:active{color:var(--ink)}

/* Compact editorial typography for the introduction. */
.manifesto{padding-top:78px;padding-bottom:78px;gap:5vw}
.manifesto>div{max-width:640px}
.manifesto h2{font-size:clamp(36px,4vw,56px);line-height:1.08;margin-bottom:26px}
.manifesto div>p{font-size:17px;line-height:1.65;max-width:620px;margin:0 0 16px}
.manifesto div>p:has(strong){margin-top:23px;margin-bottom:9px}
.manifesto div>p:has(.rules-link){margin-bottom:0}
.manifesto strong{font-weight:600}
@media(max-width:800px){.manifesto{padding:64px 24px;gap:22px!important}.manifesto h2{font-size:38px;margin-bottom:22px}.manifesto div>p{font-size:16px;line-height:1.65;margin-bottom:14px}.manifesto div>p:has(strong){margin-top:20px;margin-bottom:8px}}

.cinematic-backdrop{position:fixed;inset:0;background-color:var(--ink);background-image:url("assets/fixed-gloves.png");background-size:cover;background-repeat:no-repeat;background-position:center center}
@media(max-width:800px){.cinematic-backdrop{background-position:50% center}}

/* The dictionary is the opening leaf of the site. */
body.book-closed{overflow:hidden}
body.book-closed>:not(#book-opening):not(script){pointer-events:none}
#book-opening{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:clamp(12px,3vw,40px);border:0;background:#17120e;color:#38291d;box-shadow:none;overflow:auto;perspective:1800px;transition:background .45s ease .65s}
#book-opening[open]{display:flex;align-items:center;justify-content:center}
#book-opening::backdrop{background:#17120e;transition:background .45s ease .65s}
.book-page{position:relative;display:flex;flex-direction:column;width:min(760px,100%);min-height:min(860px,calc(100svh - 80px));padding:clamp(32px,6vw,78px);padding-bottom:36px;transform-origin:left center;backface-visibility:hidden;box-shadow:-12px 5px 24px #0008,2px 0 0 #ba9f75,5px 0 0 #7e684c,8px 0 0 #c5ac83,12px 2px 0 #3c271c;background-color:#e3cea3;background-image:linear-gradient(90deg,#7b5a3a55,transparent 5%,#fff2 45%,transparent 85%,#99713f33),radial-gradient(ellipse at 5% 6%,#805d3430,transparent 40%),radial-gradient(ellipse at 96% 94%,#8c612c44,transparent 38%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.14' filter='url(%23paper)'/%3E%3C/svg%3E");transition:transform 1.15s cubic-bezier(.4,.02,.25,1),opacity .3s ease .85s}
.book-running-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #70563488;font:small-caps 12px Georgia,'Times New Roman',serif;letter-spacing:.09em;color:#57412c}
.book-entry{margin:auto 0;padding:48px 0 36px}
#book-opening .dictionary-paragraph{margin:0;font:16px/1.65 Georgia,'Times New Roman',serif;color:#38291d;text-align:justify;hyphens:auto}
.dictionary-paragraph strong{font-weight:700}.dictionary-paragraph em{font-style:italic}
#book-opening .dictionary-paragraph>strong:first-child{font-size:20px}
.book-age{padding:22px 0 32px;border-top:1px solid #70563466;text-align:center}
#book-opening .book-age h2{font:normal 19px/1.4 Georgia,'Times New Roman',serif;letter-spacing:0;color:#38291d;margin:0 0 18px}
.book-answers{display:flex;justify-content:center;gap:18px}
.book-answers button{min-width:100px;padding:10px 22px;border:1px solid #70563488;background:transparent;color:#38291d;font:16px Georgia,'Times New Roman',serif;cursor:pointer;transition:background .2s,color .2s}
.book-answers button:hover{background:#38291d;color:#e3cea3}
.book-answers button:focus-visible{outline:2px solid #7a1022;outline-offset:4px}
#book-opening #age-denied{color:#38291d;font:16px/1.5 Georgia,'Times New Roman',serif;margin:0}
.book-folio{text-align:center;font:12px Georgia,'Times New Roman',serif;color:#57412c}
#book-opening.turning{background:transparent;pointer-events:none}#book-opening.turning::backdrop{background:transparent}
#book-opening.turning .book-page{transform:rotateY(-105deg);opacity:0}
#book-opening .book-answers[hidden]{display:none}
@media(max-width:600px){#book-opening{padding:14px}.book-page{min-height:calc(100svh - 28px);padding:30px 27px 24px}.book-running-head{font-size:10px;letter-spacing:.04em}.book-entry{padding:32px 0}#book-opening .dictionary-paragraph{font-size:14px;line-height:1.6}#book-opening .dictionary-paragraph>strong:first-child{font-size:18px}.book-age{padding:20px 0 26px}}
@media(prefers-reduced-motion:reduce){#book-opening,#book-opening::backdrop,.book-page{transition:none!important}}

/* A parchment scroll for the rules. */
.rules-page .faq-main{padding:160px 32px 100px}
.rules-scroll{position:relative;max-width:920px;margin:0 auto;padding:62px 76px 72px;color:#302315;background-color:#e4cea3;background-image:linear-gradient(90deg,#966c3844,transparent 6%,#fff2 48%,transparent 92%,#966c3844),radial-gradient(ellipse at 4% 6%,#8b612744,transparent 40%),radial-gradient(ellipse at 96% 94%,#8b612738,transparent 38%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='scroll-paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.14' filter='url(%23scroll-paper)'/%3E%3C/svg%3E");box-shadow:0 22px 70px #0009,inset 0 0 50px #89633222;border-left:1px solid #af8f59;border-right:1px solid #af8f59}
.rules-scroll::before,.rules-scroll::after{content:"";position:absolute;left:-20px;right:-20px;height:36px;border-radius:50% / 16%;border:1px solid #a3824b;background:linear-gradient(180deg,#806039 0%,#d5b681 18%,#f1deb3 42%,#d6b77e 72%,#8c693b 100%);box-shadow:0 8px 14px #0004;pointer-events:none}
.rules-scroll::before{top:-18px}.rules-scroll::after{bottom:-18px;transform:rotate(180deg)}
.rules-page .faq-heading{padding:0 0 40px;text-align:center}
.rules-page .faq-heading h1{font:400 clamp(48px,6vw,72px)/1.1 Italiana,Georgia,serif;color:#302315;margin:0;letter-spacing:0}
.rules-page .rules-content{padding:0;max-width:none}
.rules-page .rules-content article{display:grid;grid-template-columns:46px minmax(0,1fr);gap:24px;padding:32px 0;border-color:#85623766}
.rules-page .rules-content article:last-child{padding-bottom:0}
.rules-page .rules-content h2{font:400 28px/1.6 Georgia,'Times New Roman',serif;color:#785727;text-align:center;margin:0}
.rules-page .rules-content article p{font:400 24px/1.6 Georgia,'Times New Roman',serif;color:#302315;margin:0;padding:0;max-width:none}
@media(max-width:800px){.rules-page .faq-main{padding:125px 26px 75px}.rules-scroll{padding:45px 28px 50px}.rules-scroll::before,.rules-scroll::after{left:-12px;right:-12px;height:28px}.rules-scroll::before{top:-14px}.rules-scroll::after{bottom:-14px}.rules-page .faq-heading{padding-bottom:28px}.rules-page .faq-heading h1{font-size:48px}.rules-page .rules-content article{grid-template-columns:28px minmax(0,1fr);gap:16px;padding:26px 0}.rules-page .rules-content h2{font-size:22px;line-height:1.65}.rules-page .rules-content article p{font-size:20px;line-height:1.65}}
@media(max-width:380px){.rules-scroll{padding-left:20px;padding-right:20px}.rules-page .rules-content article{gap:12px}.rules-page .rules-content article p{font-size:19px}}
/* A torn antique Bible leaf replaces the decorative scroll rolls. */
.rules-scroll{width:100%;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:center;padding:100px 108px 120px;background:none;border:0;box-shadow:none;isolation:isolate}
.rules-scroll::before{inset:0;height:auto;border:0;border-radius:0;background:url('assets/ancient-parchment.png') center/100% 100% no-repeat;box-shadow:none;filter:drop-shadow(0 18px 24px #0008);z-index:-1;transform:none}
.rules-scroll::after{display:none}
.rules-page .faq-heading{padding-bottom:42px}
.rules-page .faq-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5vw,64px);font-variant:small-caps;letter-spacing:.04em;text-shadow:0 1px 0 #fff3}
.rules-page .rules-content article{padding:36px 0;border-top:1px solid #785c3544}
.rules-page .rules-content article p{font-size:24px;line-height:1.65;color:#2b2116}
.rules-page .rules-content h2{color:#714d26;font-size:27px;line-height:1.65}
@media(max-width:800px){.rules-page .faq-main{padding:110px 12px 60px}.rules-scroll{padding:75px 45px 90px;aspect-ratio:auto;min-height:800px}.rules-page .faq-heading{padding-bottom:30px}.rules-page .faq-heading h1{font-size:42px}.rules-page .rules-content article{padding:28px 0;gap:14px;grid-template-columns:26px minmax(0,1fr)}.rules-page .rules-content article p{font-size:20px;line-height:1.65}.rules-page .rules-content h2{font-size:22px}}
@media(max-width:380px){.rules-scroll{padding-left:36px;padding-right:32px}.rules-page .rules-content article p{font-size:19px}.rules-page .rules-content article{gap:10px}}

.manifesto>div{grid-column:2}@media(max-width:800px){.manifesto>div{grid-column:1}}

.discernment-lines{margin-top:0}@media(max-width:800px){.discernment-lines{margin-top:0}}

.etiquette-page .faq-main{padding:160px 32px 100px}
.etiquette-sheet{max-width:980px;margin:0 auto;padding:72px 80px 80px;background:rgba(7,6,6,.9);border:1px solid rgba(199,170,113,.2);box-shadow:0 18px 60px #0003}
.etiquette-page .faq-heading{padding:0 0 48px}
.etiquette-page .faq-heading h1{font:400 clamp(58px,7vw,88px)/1.05 Italiana,Georgia,serif;color:var(--paper);margin:0;letter-spacing:-.02em}
.etiquette-page .faq-heading .etiquette-subtitle{font:italic 21px/1.5 Georgia,'Times New Roman',serif;color:var(--gold);margin:22px 0 0;max-width:none}
.etiquette-page .etiquette-content{padding:0;max-width:none}
.etiquette-content article{padding:30px 0;border-top:1px solid rgba(199,170,113,.22)}
.etiquette-content article:last-child{padding-bottom:0}
.etiquette-page .etiquette-content h2{font:400 28px/1.3 Italiana,Georgia,serif;color:var(--paper);margin:0 0 15px}
.etiquette-page .etiquette-content p{font:400 20px/1.7 Georgia,'Times New Roman',serif;color:#d1c7ba;padding:0;margin:0;max-width:none}
.etiquette-rules-link{text-decoration:underline;text-underline-offset:5px;color:var(--gold)!important}
.etiquette-rules-link:hover{color:var(--red)!important}
@media(max-width:800px){.etiquette-page .faq-main{padding:110px 20px 60px}.etiquette-sheet{padding:42px 25px 48px}.etiquette-page .faq-heading{padding-bottom:32px}.etiquette-page .faq-heading h1{font-size:58px}.etiquette-page .faq-heading .etiquette-subtitle{font-size:18px;margin-top:18px}.etiquette-page .etiquette-content h2{font-size:26px}.etiquette-page .etiquette-content p{font-size:18px;line-height:1.7}.etiquette-content article{padding:25px 0}}

.etiquette-page .etiquette-content .etiquette-email{margin-top:18px}.etiquette-email a:link,.etiquette-email a:visited{color:var(--gold);font-size:18px;text-decoration:underline;text-underline-offset:5px}.etiquette-email a:hover{color:var(--red)}
.frames.sophia-collage{margin-top:-40px}
@media(max-width:800px){.frames.sophia-collage{margin-top:-24px}}
.gallery{padding-top:15px}
.discernment{padding-bottom:60px}
@media(max-width:800px){.gallery{padding-top:15px}.discernment{padding-bottom:40px}}
/* Bring the collage directly beneath the preceding quote. */
.discernment{padding-top:55px;padding-bottom:0}
.discernment-lines p{padding-top:20px;padding-bottom:20px}
.gallery{padding-top:0}
.gallery-head{margin-bottom:24px}
@media(max-width:800px){.discernment{padding-top:40px;padding-bottom:0}.discernment-lines p{padding-top:20px;padding-bottom:20px}.gallery{padding-top:0}.gallery-head{margin-bottom:20px}}

.donations-intro{max-width:760px;margin-top:38px}
.donations-intro p{font:400 21px/1.7 Georgia,'Times New Roman',serif;color:#d1c7ba;margin:0}
.donations-intro .donations-lead{font-size:27px;line-height:1.45;color:var(--gold);margin-bottom:22px}
@media(max-width:800px){.donations-intro{margin-top:30px}.donations-intro p{font-size:18px;line-height:1.7}.donations-intro .donations-lead{font-size:23px;margin-bottom:20px}}

.donations-options{padding:0 8vw 100px}
.donation-option{max-width:760px;border-top:1px solid rgba(199,170,113,.35);padding-top:38px}
.donation-option h2{font:400 clamp(32px,3.6vw,48px)/1.15 Italiana,Georgia,serif;color:var(--paper);margin:0 0 18px}
.donation-option p{font:400 20px/1.7 Georgia,'Times New Roman',serif;color:#d1c7ba;margin:0 0 22px}
.donation-option .donation-duration{color:var(--gold);font-size:19px;margin-bottom:30px}
.donation-option p:last-child{margin-bottom:0}
@media(max-width:800px){.donations-options{padding:0 24px 70px}.donation-option{padding-top:30px}.donation-option h2{font-size:34px}.donation-option p{font-size:18px}.donation-option .donation-duration{font-size:18px;margin-bottom:24px}}

.donation-option+.donation-option{margin-top:64px}
@media(max-width:800px){.donation-option+.donation-option{margin-top:46px}}

.quote-pleasure .curiosity-invitation{margin:42px auto 0;font:400 clamp(32px,4.2vw,58px)/1.2 Italiana,Georgia,serif;max-width:900px}
.curiosity-invitation a:link,.curiosity-invitation a:visited{color:var(--red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px}
.curiosity-invitation a:hover{color:var(--paper)}
@media(max-width:800px){.quote-pleasure .curiosity-invitation{font-size:34px;margin-top:32px}}

/* A modest increase in the Welcome introduction’s type size. */
.manifesto h2{font-size:clamp(40px,4.4vw,62px)}
.manifesto div>p{font-size:19px}
.manifesto .rules-link{font-size:16px}
@media(max-width:800px){.manifesto h2{font-size:42px}.manifesto div>p{font-size:18px}.manifesto .rules-link{font-size:16px}}

.manifesto .rules-link{font-size:22px;font-weight:700;letter-spacing:.1em}
@media(max-width:800px){.manifesto .rules-link{font-size:20px}}

/* Keep the mobile album in document flow and show each entire photograph. */
@media(max-width:800px){
 .gallery{padding-left:18px;padding-right:18px;padding-bottom:48px}
 .gallery-head{margin:0 0 12px}
 .frames.sophia-collage{display:flex!important;flex-direction:column;gap:24px;height:auto!important;max-width:520px;margin:0 auto;padding:8px 6px 12px}
 .frames.sophia-collage figure{position:relative!important;inset:auto!important;grid-area:auto;width:94%!important;height:auto!important;padding:5px;transform:rotate(-2deg)!important;align-self:flex-start}
 .frames.sophia-collage figure:nth-child(even){width:86%!important;align-self:flex-end;transform:rotate(2deg)!important}
 .sophia-collage .photo-open{height:auto}
 .frames.sophia-collage img{width:100%;height:auto;object-fit:contain}
 #lightbox{height:100svh;max-height:100svh;padding:calc(60px + env(safe-area-inset-top)) 12px calc(16px + env(safe-area-inset-bottom))}
 #lightbox img{max-width:100%;max-height:calc(100svh - 76px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
 .lightbox-close{top:calc(10px + env(safe-area-inset-top))}
}

/* Tighter, overlapping mobile collage. */
@media(max-width:800px){
 .frames.sophia-collage{gap:0;padding:14px 6px 18px}
 .frames.sophia-collage figure{width:92%!important;transform:rotate(-4deg)!important}
 .frames.sophia-collage figure+figure{margin-top:calc(-1 * clamp(36px,14vw,70px))}
 .frames.sophia-collage figure:nth-child(even){width:80%!important;transform:rotate(4deg)!important}
 .frames.sophia-collage figure.c1{z-index:1}
 .frames.sophia-collage figure.c2{z-index:2}
 .frames.sophia-collage figure.c3{z-index:3}
 .frames.sophia-collage figure.c4{z-index:4}
}


/* Four small mobile prints, in two overlapping rows. */
@media(max-width:800px){
 .frames.sophia-collage{display:block!important;position:relative!important;aspect-ratio:100/115;height:auto!important;padding:0;max-width:380px}
 .frames.sophia-collage figure{position:absolute!important;margin:0!important;padding:4px;aspect-ratio:4/5;height:auto!important;right:auto!important;bottom:auto!important}
 .frames.sophia-collage figure.c1{left:3%!important;top:2%!important;width:49%!important;transform:rotate(-5deg)!important;z-index:2}
 .frames.sophia-collage figure.c2{left:48%!important;top:3%!important;width:49%!important;transform:rotate(4deg)!important;z-index:1}
 .frames.sophia-collage figure.c3{left:3%!important;top:45%!important;width:49%!important;transform:rotate(3deg)!important;z-index:3}
 .frames.sophia-collage figure.c4{left:48%!important;top:45%!important;width:49%!important;transform:rotate(-5deg)!important;z-index:4}
 .frames.sophia-collage .photo-open{height:100%}
 .frames.sophia-collage img{height:100%;object-fit:cover}
}

/* Fill the mobile viewport with the fixed photograph. */
@media(max-width:800px){
 .cinematic-backdrop{background-size:cover;background-position:center center;background-color:var(--ink)}
}
