/* Gwenllian's supplied artwork: complete covers and framed, uncropped illustrations. */
.brand-name{display:block;font:400 31px/1.12 var(--serif);color:#f6e5c3;white-space:nowrap;letter-spacing:-.6px}
.brand-type{gap:7px}.brand .supplied-mark{border-radius:50%;background:white;object-fit:contain;box-shadow:0 0 0 1px #e4c58580;filter:none}
.site-header .brand{gap:13px}.site-header .supplied-mark{width:70px;height:70px}.footer-top .supplied-mark{width:60px;height:60px}
.page-home .chapter-welcome{background:linear-gradient(90deg,#162e31ed 0%,#172e31cf 35%,#19333142 75%),linear-gradient(0deg,#152d36bd,transparent 35%),url('/assets/gwenllian/mollygee-lane.webp') center/cover}
.hero{min-height:655px;gap:40px}.hero-art{align-self:center;width:100%;max-width:535px;margin:0 auto;padding:0}.hero-art::before{display:none}
.hero .supplied-hero{display:block;width:100%;height:auto;min-height:0;object-fit:contain;filter:drop-shadow(0 20px 22px #08141677);border-radius:50%;background:#fff}
.hero-caption{margin-top:18px;transform:rotate(-2deg);color:#ffedc6}
.storybook.real-book{position:relative;width:220px!important;height:330px!important;background:none!important;border:0!important;border-radius:1px;transform:none!important;box-shadow:8px 12px 24px #0005;isolation:isolate;padding:0!important;overflow:visible}
.real-book::before{content:'';position:absolute;inset:5px -5px -3px 8px;background:repeating-linear-gradient(0deg,#dbcdb0 0 1px,#f6eacf 1px 3px);z-index:-1;border-radius:2px;box-shadow:2px 1px 1px #0004}.real-book::after{display:none!important}
.real-book .real-cover{display:block;position:static;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:none;filter:none;opacity:1;border-radius:1px}
.collection-card{grid-template-rows:388px auto}.collection-card .collection-visual,.collection-card.welsh-card .collection-visual{height:388px;gap:18px;padding-top:14px}.collection-card .storybook.real-book{width:210px!important;height:315px!important}
.collection-info>div{grid-template-rows:24px 76px auto}.collection-info h3{font-size:29px;line-height:1.25}.collection-card .collection-spark{top:150px}.collection-card:hover .real-book{transform:translateY(-5px)!important}.real-book{transition:transform .25s ease}
.about-copy h2{max-width:430px;font-size:46px}
.page-home .chapter-world{padding:65px 0 48px;background:radial-gradient(ellipse at 50% 0%,#a87d4f40,transparent 75%),linear-gradient(115deg,#3c3025f7,#262a29f7)}
.world-heading h2,.art-gallery h2{font:400 39px/1.25 var(--editorial);color:#fff0da;margin:0 0 18px}.world-heading h2 em,.art-gallery h2 em{color:#edcf98;font-family:var(--serif)}
.world-heading .eyebrow{color:#e2c38b;font:700 10px/1.7 var(--sans);letter-spacing:2.5px;margin-bottom:17px}.world-heading>p:last-child{font-size:14px;color:#d9cdbc}
.world-spread{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;margin:32px auto 20px}.art-tile{appearance:none;display:block;min-width:0;width:100%;padding:9px 9px 0;border:1px solid #e2c99b6b;border-radius:3px;background:#f8f0df;color:#382a25;cursor:zoom-in;text-align:center;box-shadow:0 9px 24px #0b16193d;transition:transform .2s,border-color .2s;font:inherit}
.art-tile img{display:block;width:100%;height:auto;object-fit:contain;border-radius:0}.art-tile>span{display:block;font:22px/1.3 var(--hand);padding:13px 8px 15px;color:#563e30}.art-tile:hover{transform:translateY(-4px);border-color:#fce6ad}.art-tile:focus-visible{outline:3px solid #f8d384;outline-offset:5px}.world-moment{transform:rotate(2deg)}.world-landscape{transform:rotate(-1deg)}.world-link{display:table;margin:27px auto 0;font:21px/1.4 var(--hand);color:#f5ddb0;text-decoration:underline;text-underline-offset:6px}
.little-section .parcel-art{max-width:350px;transform:rotate(-3deg);margin:0 auto}.parcel-art img,.shop-parcel img{background:#fff;border:9px solid #f7ecd3;border-radius:7px;box-shadow:0 16px 35px #0004;object-fit:contain}
.shop-parcel{max-width:400px;margin:30px auto 38px}.shop-parcel img{width:100%;height:auto;max-height:none}.shop-parcel .parcel-star,.shop-parcel .parcel-note{display:none}
.shelf-preview{gap:50px;padding:45px;align-items:center}.shelf-art{padding:0;display:grid;justify-items:center;gap:25px}.shelf-art .storybook.real-book{width:260px!important;height:390px!important}.shelf-art>.handwritten{margin:0;position:static;font-size:24px;transform:rotate(-3deg)}
.shelf-copy h2{font:400 37px/1.2 var(--editorial);margin:20px 0}.shelf-copy .book-author{font-size:18px;color:#efd6a6}.shelf-copy .status-tag{line-height:1.6}.shelf-footnote{display:block;line-height:1.7;margin-top:20px}
.art-gallery{padding:75px 0 30px;border-top:1px solid #ddc69530;margin-top:65px}.art-gallery .eyebrow{color:#ddc18c}.art-gallery>p{color:#d6cfc2;max-width:650px;line-height:1.8}.art-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:start;margin-top:30px}.art-grid .art-tile{padding:7px 7px 0}.art-grid .art-tile img{height:240px;background:#fffef9;object-fit:contain}.art-grid .art-tile>span{font-size:21px;min-height:65px;display:grid;align-items:center;padding:9px}.art-grid .art-tile:nth-child(3n+2){margin-top:24px}
#art-dialog{width:max-content;max-width:calc(100vw - 36px);max-height:calc(100dvh - 36px);padding:48px 15px 12px;border:1px solid #d7b478;border-radius:7px;background:#fffaf0;overflow:auto;box-shadow:0 25px 100px #0008}#art-dialog::backdrop{background:#0b1824e8;backdrop-filter:blur(5px)}
.art-dialog-image{display:block;max-width:min(1100px,calc(100vw - 70px));max-height:calc(100dvh - 145px);width:auto;height:auto;object-fit:contain;margin:auto}.art-close{position:absolute;top:8px;right:12px;padding:7px 12px;border:0;border-radius:4px;background:#eee2cc;color:#392d29;font:700 14px/1.3 var(--sans);cursor:pointer;min-height:32px}.art-close:focus-visible{outline:2px solid #76542a;outline-offset:2px}#art-dialog-caption{text-align:center;font:23px/1.25 var(--hand);margin:10px 0 0;color:#4c3829}
@media(min-width:1450px){.hero{min-height:700px}.hero-art{width:100%;margin:auto}.hero .supplied-hero{max-width:530px}}
@media(max-width:1200px){.brand-name{font-size:27px}.site-header .supplied-mark{width:57px;height:57px}.hero{gap:27px}.hero-art{width:100%;margin:auto}.art-grid .art-tile img{height:205px}}
@media(max-width:960px){.site-header .brand-name{font-size:28px}.site-header .supplied-mark{width:56px;height:56px}.hero{gap:20px;min-height:540px}.hero-art{width:100%;margin:auto}.hero-caption{font-size:21px}.collection-info h3{font-size:25px}.collection-info>div{grid-template-rows:24px 69px auto}.about-copy h2{font-size:36px}.world-spread{gap:21px}.world-heading h2,.art-gallery h2{font-size:34px}.shelf-preview{padding:28px;gap:30px}.shelf-art .storybook.real-book{width:215px!important;height:322.5px!important}.shelf-copy h2{font-size:30px}.art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.art-grid .art-tile:nth-child(3n+2){margin:0}.art-grid .art-tile img{height:245px}.footer-top .brand-name{font-size:26px}}
@media(max-width:660px){.site-header .brand{gap:9px}.site-header .brand-name{font-size:23px}.site-header .supplied-mark{width:47px;height:47px}.brand .brand-caption{font-size:5.5px;letter-spacing:1.5px}.page-home .chapter-welcome{background:linear-gradient(180deg,#1b3434eb,#24453ac9 56%,#172f3bcc),url('/assets/gwenllian/mollygee-lane.webp') center/cover}.hero{gap:20px;padding:38px 0 29px;min-height:0}.hero-art{width:100%;max-width:320px;margin:0 auto}.hero-caption{font-size:22px;margin-top:14px}.hero-intro{max-width:280px}.collection-card{grid-template-rows:375px auto}.collection-card .collection-visual,.collection-card.welsh-card .collection-visual{height:375px}.collection-card .storybook.real-book{width:205px!important;height:307.5px!important}.collection-info>div{grid-template-rows:auto auto auto;gap:14px}.collection-info h3{font-size:28px}.page-home .chapter-world{padding:37px 0 35px}.world-heading h2,.art-gallery h2{font-size:29px}.world-heading>p:last-child{font-size:13px}.world-spread{grid-template-columns:1fr;gap:26px;max-width:370px;margin-top:25px}.art-tile>span{font-size:22px}.world-moment{transform:rotate(1deg)}.world-landscape{transform:rotate(-1deg)}.world-link{font-size:21px}.about-copy h2{font-size:36px;max-width:290px;margin-inline:auto}.little-section .parcel-art{max-width:255px;margin:10px auto 5px}.footer-top .brand-name{font-size:24px}.footer-top .supplied-mark{width:45px;height:45px}.shelf-preview{padding:30px 20px;display:grid;grid-template-columns:1fr;gap:35px}.shelf-art .storybook.real-book{width:220px!important;height:330px!important}.shelf-copy h2{font-size:31px}.art-gallery{padding-top:38px;margin-top:40px}.art-gallery>p{font-size:13px}.art-grid{grid-template-columns:1fr;max-width:360px;margin-inline:auto;gap:25px}.art-grid .art-tile img{height:auto;max-height:380px}.art-grid .art-tile>span{min-height:0;padding:12px 6px;font-size:23px}.shop-parcel{max-width:270px}.art-dialog-image{max-width:calc(100vw - 66px)}#art-dialog{max-width:calc(100vw - 20px);padding-inline:12px}}
@media(max-width:380px){.site-header .brand-name{font-size:19px}.site-header .supplied-mark{width:38px;height:38px}.site-header .brand{gap:6px}.site-header .brand-caption{font-size:4.6px;letter-spacing:1.1px}.hero-art{max-width:275px}.collection-info h3{font-size:25px}.footer-top .brand-name{font-size:20px}.footer-top .supplied-mark{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){.art-tile,.real-book{transition:none}.art-tile:hover,.collection-card:hover .real-book{transform:none!important}}

/* Let the actual cover dimensions set the book's proportions, then fit the card to it. */
.hero .button.leaf-button{width:300px;max-width:100%;min-height:126px;padding:30px 30px 34px 55px;font-size:21px;line-height:1.3;flex-shrink:0;overflow:visible}
@media(max-width:660px){
 .hero-story,.hero-actions{width:100%}
 .hero .button.leaf-button{width:min(320px,100%);min-height:132px;margin:4px auto 0;padding:32px 9% 36px 17%;font-size:21px;line-height:1.3}
 .hero-welsh{margin-top:8px}
}
.storybook.real-book{height:auto!important;aspect-ratio:var(--cover-ratio);flex-shrink:0}
.real-book .real-cover{height:auto;aspect-ratio:var(--cover-ratio)}
.page-home .collection-grid{max-width:840px;gap:36px;align-items:stretch}
.page-home .collection-card{grid-template-rows:auto 1fr;padding:24px 22px 20px;gap:18px}
.page-home .collection-card::before{border-radius:185px 185px 5px 5px}
.page-home .collection-card .collection-visual{height:auto;min-height:0;padding:4px 0 0;gap:16px}
.page-home .collection-card .storybook.real-book{width:auto!important;height:clamp(300px,32vw,402px)!important;max-width:100%}
.page-home .collection-card .visual-note{font-size:23px;min-height:29px;line-height:1.25;width:100%}
.page-home .collection-card .collection-spark{display:none}
.page-home .collection-info{padding:0;display:flex;justify-content:center;align-items:stretch}
.page-home .collection-info>div{width:100%;display:grid;grid-template-rows:20px minmax(68px,auto) 1fr;gap:7px;align-items:start;align-content:start}
.page-home .collection-info .eyebrow{font-size:8px;letter-spacing:1.6px;align-self:center}
.page-home .collection-info h3{min-height:0;font-size:27px;line-height:1.25;align-self:center;margin:0}
.page-home .collection-info p{font-size:12px;line-height:1.6;margin:0 auto;max-width:285px}
.shelf-art .storybook.real-book{height:auto!important}
@media(max-width:960px) and (min-width:661px){
 .page-home .collection-grid{gap:24px}
 .page-home .collection-card{padding:22px 16px 20px;gap:16px}
 .page-home .collection-card .storybook.real-book{width:auto!important}
 .page-home .collection-info h3{font-size:24px}
 .page-home .collection-info .eyebrow{font-size:7px;letter-spacing:1px}
 .page-home .collection-card .visual-note{font-size:21px}
}
@media(max-width:660px){
 .page-home .collection-grid{max-width:330px;gap:28px}
 .page-home .collection-card{padding:23px 20px;gap:17px}
 .page-home .collection-card .storybook.real-book{width:min(86%,245px)!important;height:auto!important}
 .page-home .collection-card .visual-note{font-size:23px}
 .page-home .collection-info>div{grid-template-rows:auto auto auto;gap:11px}
 .page-home .collection-info h3{font-size:26px}
 .page-home .collection-info p{font-size:12px}
}
