@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,500&family=Libre+Baskerville:wght@400;700&display=swap');

*{box-sizing:border-box}html{scroll-behavior:smooth}.tale-body{margin:0;color:#eadbc9;background:radial-gradient(circle at 50% 0%,rgba(99,46,29,.13),transparent 28%),#050403;font-family:'Libre Baskerville',serif}.tale-page{min-height:100vh;padding:34px 20px 64px}.paper-shell{position:relative;width:min(1260px,100%);margin:0 auto;padding:30px 34px 78px;overflow:hidden;border:1px solid rgba(181,108,77,.16);background:linear-gradient(180deg,rgba(17,13,11,.97),rgba(8,6,5,.985)),radial-gradient(circle at 24% 10%,rgba(181,108,77,.06),transparent 28%);box-shadow:0 30px 90px rgba(0,0,0,.48),inset 0 0 0 1px rgba(255,255,255,.015)}.paper-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.42' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.82'/%3E%3C/svg%3E")}.paper-shell:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 140px rgba(0,0,0,.66)}.return-button,.folio-header,.illustration-layout,.synopsis-section,.tale-facts,.gallery-section,.folio-quote{position:relative;z-index:1}.return-button{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:11px 16px;border:1px solid rgba(188,124,86,.42);color:#d6b299;background:rgba(16,11,9,.72);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.22);transition:border-color .25s ease,color .25s ease,background .25s ease}.return-button:hover,.return-button:focus-visible{color:#f0d7c4;border-color:rgba(214,151,112,.78);background:rgba(28,18,14,.9);outline:none}.return-button span{font-size:1rem}.folio-header{display:grid;grid-template-columns:1fr 150px;align-items:start;gap:20px;margin-bottom:30px}.folio-side{display:flex;flex-direction:column;align-items:center;color:#927969;text-transform:uppercase}.folio-right{align-items:flex-end;text-align:right}.folio-monogram{font:500 3.1rem/1 'Cormorant Garamond',serif;color:#7e6859}.folio-small{margin-top:5px;font-size:.62rem;line-height:1.55;letter-spacing:.24em}.title-block{text-align:center;padding-left:150px}.ornament-label{display:flex;align-items:center;justify-content:center;gap:14px;margin:0;color:#b87a5b;text-transform:uppercase;letter-spacing:.34em;font-size:.68rem}.ornament-label span{display:block;width:48px;height:1px;background:linear-gradient(90deg,transparent,rgba(181,108,77,.6))}.ornament-label span:last-child{transform:scaleX(-1)}.title-block h1{margin:8px 0 0;color:#ead8c3;font:500 clamp(3.7rem,7vw,6.7rem)/.92 'Cormorant Garamond',serif}.title-flourish{margin:4px 0;color:#8e6953;font-size:.8rem}.title-tagline{margin:0;color:#bda896;font:italic 500 clamp(1rem,1.7vw,1.28rem)/1.5 'Cormorant Garamond',serif}.illustration-layout{display:grid;grid-template-columns:minmax(130px,1fr) minmax(340px,560px) minmax(130px,1fr);gap:30px;align-items:stretch}.tale-plate{position:relative;margin:0;padding:14px;overflow:visible;border:1px solid rgba(181,108,77,.24);background:rgba(10,8,7,.76);box-shadow:0 20px 60px rgba(0,0,0,.36),inset 0 0 0 1px rgba(255,255,255,.015)}.plate-image{aspect-ratio:9/16;border:1px solid rgba(201,142,107,.28);background:linear-gradient(180deg,rgba(4,3,3,.08),rgba(4,3,3,.2)),url('assets/pride_card.png') center 24%/cover no-repeat;filter:grayscale(.48) saturate(.82) contrast(1.08) brightness(.86);box-shadow:inset 0 0 54px rgba(0,0,0,.45);transform:scale(1.002) translateY(0);transform-origin:center 42%;transition:transform 1.15s cubic-bezier(.2,.7,.2,1),filter 1.15s ease}.tale-plate:hover .plate-image{transform:scale(1.035) translateY(-6px);filter:grayscale(.4) saturate(.86) contrast(1.1) brightness(.91)}.wip-stamp{position:absolute;right:-84px;bottom:-44px;z-index:8;display:flex;align-items:center;justify-content:center;width:230px;height:118px;border:7px double rgba(139,22,28,.92);border-radius:50%;color:rgba(156,24,31,.94);font:700 3.7rem/1 'Libre Baskerville',serif;letter-spacing:.05em;text-transform:uppercase;transform:rotate(-13deg) skewX(-2deg);mix-blend-mode:screen;text-shadow:1px 0 rgba(93,10,15,.8),-1px 1px rgba(93,10,15,.55);filter:contrast(1.25) saturate(1.15);opacity:.9;pointer-events:none}.wip-stamp:before,.wip-stamp:after{content:"";position:absolute;pointer-events:none}.wip-stamp:before{inset:8px;border:2px solid rgba(145,21,27,.72);border-radius:50%;transform:rotate(2deg)}.wip-stamp:after{inset:-10px;background:repeating-linear-gradient(12deg,transparent 0 11px,rgba(20,8,8,.16) 12px 13px),radial-gradient(circle at 18% 35%,transparent 0 2px,rgba(15,5,5,.18) 3px 5px,transparent 6px),radial-gradient(circle at 78% 64%,transparent 0 3px,rgba(15,5,5,.22) 4px 7px,transparent 8px);mix-blend-mode:multiply;opacity:.72;transform:rotate(4deg)}.plate-ornament{position:absolute;left:50%;z-index:2;transform:translateX(-50%);color:#8b684f;font-size:.95rem}.plate-ornament-top{top:-10px}.plate-ornament-bottom{bottom:-10px}.margin-column{position:relative;min-height:100%}.margin-note{position:absolute;margin:0;color:rgba(195,170,151,.9);font-family:'Mrs Saint Delafield',cursive;font-weight:400;line-height:.84;text-shadow:0 3px 16px rgba(0,0,0,.72);letter-spacing:.01em}.margin-note:after{content:"";display:block;width:82%;height:1px;margin-top:5px;background:rgba(156,110,82,.35)}.note-one{top:18%;left:8%;font-size:clamp(2.4rem,3.2vw,3.6rem);transform:rotate(-7deg)}.note-two{top:58%;left:12%;max-width:170px;font-size:clamp(2.2rem,3vw,3.3rem);transform:rotate(4deg)}.note-three{top:24%;right:4%;max-width:185px;text-align:right;font-size:clamp(2.25rem,3.1vw,3.5rem);transform:rotate(5deg)}.note-four{top:63%;right:0;max-width:215px;text-align:right;font-size:clamp(2.15rem,2.9vw,3.25rem);transform:rotate(-4deg)}.synopsis-section{max-width:850px;margin:44px auto 0;text-align:center}.section-label{font-size:.62rem}.synopsis-copy{margin:18px auto 0;color:#cdbdaf;font-size:.98rem;line-height:1.95}.tale-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:1040px;margin:34px auto 0;border-top:1px solid rgba(181,108,77,.24);border-bottom:1px solid rgba(181,108,77,.14)}.tale-facts article{position:relative;padding:19px 14px;text-align:center}.tale-facts article:not(:last-child):after{content:"";position:absolute;right:0;top:22%;bottom:22%;width:1px;background:rgba(181,108,77,.2)}.fact-icon{display:block;margin-bottom:7px;color:#a8795d;font-size:1.1rem}.tale-facts small{display:block;margin-bottom:7px;color:#917e71;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase}.tale-facts strong{color:#e1cbb8;font:500 .95rem/1.5 'Cormorant Garamond',serif}.gallery-section{margin-top:58px}.gallery-heading{text-align:center;margin-bottom:22px}.gallery-heading h2{margin:8px 0 0;color:#e7d2bd;font:500 clamp(2.2rem,4vw,3.4rem)/1 'Cormorant Garamond',serif}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-item{text-align:center}.gallery-item p{margin:12px 0 0;color:#b89a85;font:500 .84rem 'Cormorant Garamond',serif;letter-spacing:.12em;text-transform:uppercase}.gallery-open{position:relative;display:block;width:100%;padding:0;overflow:hidden;cursor:zoom-in;border:1px solid rgba(181,108,77,.24);background:#0b0807;box-shadow:0 14px 34px rgba(0,0,0,.22);appearance:none}.gallery-open img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(.42) sepia(.08) saturate(.76) contrast(1.12) brightness(.78);transform:scale(1.01);transition:transform .45s ease,filter .45s ease}.gallery-open:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 30px rgba(0,0,0,.45);transition:box-shadow .45s ease}.gallery-open:hover img,.gallery-open:focus-visible img{transform:scale(1.045);filter:grayscale(.18) sepia(.06) saturate(.9) contrast(1.08) brightness(.92)}.gallery-open:hover:after,.gallery-open:focus-visible:after{box-shadow:inset 0 0 18px rgba(0,0,0,.28),0 0 0 1px rgba(208,143,101,.4)}.gallery-open:focus-visible{outline:2px solid rgba(215,154,115,.72);outline-offset:3px}.gallery-zoom{position:absolute;right:12px;bottom:10px;z-index:2;padding:5px 8px;color:#e0c1aa;background:rgba(6,4,3,.72);border:1px solid rgba(196,132,94,.34);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:opacity .25s ease,transform .25s ease}.gallery-open:hover .gallery-zoom,.gallery-open:focus-visible .gallery-zoom{opacity:1;transform:translateY(0)}.folio-quote{margin-top:42px;text-align:center;color:#a99586}.quote-flourish{color:#80614d}.folio-quote blockquote{margin:8px 0 4px;font:italic 500 1.08rem 'Cormorant Garamond',serif}.folio-quote p{margin:0;font-size:.75rem}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:34px}.lightbox-backdrop{position:absolute;inset:0;background:rgba(3,2,2,.92);backdrop-filter:blur(8px)}.lightbox-figure{position:relative;z-index:1;margin:0;display:flex;flex-direction:column;align-items:center;max-height:calc(100vh - 68px)}.lightbox-image{display:block;max-width:min(90vw,1400px);max-height:calc(100vh - 120px);object-fit:contain;border:1px solid rgba(193,130,91,.28);box-shadow:0 28px 90px rgba(0,0,0,.68)}.lightbox-caption{margin-top:12px;color:#c7ad9a;font:500 1rem 'Cormorant Garamond',serif;letter-spacing:.08em}.lightbox-close,.lightbox-nav{position:relative;z-index:2;border:1px solid rgba(199,138,99,.35);color:#e5c7b2;background:rgba(17,11,9,.76);cursor:pointer}.lightbox-close{position:absolute;top:20px;right:22px;width:44px;height:44px;font-size:1.8rem;line-height:1}.lightbox-nav{width:46px;height:58px;font-size:2.2rem}.lightbox-close:hover,.lightbox-close:focus-visible,.lightbox-nav:hover,.lightbox-nav:focus-visible{border-color:rgba(219,158,117,.75);background:rgba(31,19,15,.9);outline:none}body.lightbox-open{overflow:hidden}@media(prefers-reduced-motion:reduce){.plate-image,.gallery-open img,.gallery-open:after,.gallery-zoom{transition:none}.tale-plate:hover .plate-image,.gallery-open:hover img,.gallery-open:focus-visible img{transform:none}}@media(max-width:980px){.folio-header{grid-template-columns:1fr 90px}.title-block{padding-left:90px}.illustration-layout{grid-template-columns:1fr}.margin-column{display:flex;justify-content:center;gap:26px;min-height:auto}.margin-note{position:static!important;transform:none!important;max-width:none!important;text-align:center!important;font-size:2.2rem!important}.margin-left{order:1}.tale-plate{order:2;width:min(100%,560px);margin:0 auto}.margin-right{order:3}.margin-note:after{margin-left:auto;margin-right:auto}.wip-stamp{right:-36px;bottom:-36px;width:200px;height:104px;font-size:3.15rem}.tale-facts{grid-template-columns:1fr 1fr}.tale-facts article:nth-child(2):after,.tale-facts article:nth-child(4):after{display:none}.tale-facts article:last-child{grid-column:1/-1}}@media(max-width:700px){.tale-page{padding:0}.paper-shell{padding:22px 16px 54px;border-left:0;border-right:0}.return-button{margin-bottom:26px}.folio-header{grid-template-columns:1fr}.folio-side{display:none}.title-block{padding-left:0}.title-block h1{font-size:3.35rem}.illustration-layout{gap:18px}.margin-column{flex-direction:column;align-items:center;gap:10px}.plate-image{background-position:center 24%}.wip-stamp{right:-8px;bottom:-26px;width:154px;height:82px;border-width:5px;font-size:2.35rem;transform:rotate(-11deg)}.synopsis-section{margin-top:64px}.synopsis-copy{font-size:.92rem;line-height:1.8}.tale-facts{grid-template-columns:1fr}.tale-facts article:after{display:none!important}.tale-facts article:last-child{grid-column:auto}.gallery-grid{grid-template-columns:1fr}.lightbox{grid-template-columns:1fr;padding:58px 14px 20px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:54px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-image{max-width:100%;max-height:calc(100vh - 130px)}}
