/* Logo-led interface palette. The print artwork keeps its own colour choices. */
:root{--ink:#30302e;--cream:#faf9f6;--coral:#995f32;--line:#dedbd4;--mint:#f1ede6;--lilac:#f1ede6;--yellow:#f1ede6}
.nav{background:#faf9f6;border-color:#dedbd4;box-shadow:none;position:relative}
nav a,.nav-cta{color:#30302e}
.button{border-radius:3px;box-shadow:none;font-size:16px;font-weight:700;min-height:50px}
.nav-cta{font-size:16px;font-weight:700;display:inline-flex;align-items:center}
.button .button-arrow,.nav-cta .button-arrow{width:24px;height:24px;flex:0 0 24px;margin-left:12px;vertical-align:middle}
.primary{background:#995f32;color:#fff}
.primary:hover{background:#804c28}
.print-size-picker button{border-radius:3px}
.print-size-picker button.active,.print-size-picker button:hover{background:#f5ece1;border-color:#b87943;color:#30302e}
.print-size-picker button.active small{color:#69645e}
a:focus-visible,button:focus-visible{outline:2px solid #995f32;outline-offset:4px}
.shop-home{background:#faf9f6;color:#30302e}
/* Match the fuller, more comfortable scale of a 110% browser zoom at normal zoom. */
.shop-home{zoom:1.1;width:90.9091%;margin-left:auto;margin-right:auto}
.shop-home h1,.shop-home h2,.shop-home h3{font-family:'DM Sans',sans-serif;font-weight:500;letter-spacing:-.035em;line-height:1.15}
.shop-home h1{font-size:clamp(36px,4.4vw,62px)}
.shop-home h2{font-size:clamp(25px,2.7vw,36px)}
.shop-home p{line-height:1.65}
.shop-home section{scroll-margin-top:24px}
.shop-hero{max-width:1380px;margin:auto;padding:48px 6vw 64px;display:grid;grid-template-columns:1.35fr 1fr;gap:5.5vw;align-items:center}
.hero-product{margin:0;min-width:0;transform:translateY(-36px)}
.hero-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;overflow:hidden}
.shop-intro{min-width:0}
.product-frame{background:#37332f;padding:10px;box-shadow:3px 7px 16px #302a241a}
.product-paper{background:#fff;padding:38px 28px 24px;text-align:center;min-height:360px;display:flex;flex-direction:column;justify-content:end}
.showcase-cast{display:flex;justify-content:center;align-items:end;gap:4px;height:245px}
.showcase-cast .example-person{display:block;width:72px;height:230px;flex:0 1 72px;min-width:0}
.showcase-cast .example-pet{display:block;width:74px;height:113px;flex:0 1 74px;min-width:0}
.showcase-cast svg{width:100%;height:100%;display:block;overflow:visible}
.print-name{font:600 12px/1.3 'DM Sans',sans-serif;letter-spacing:.13em;margin:25px 0 5px}
.print-note{font:italic 13px/1.3 Georgia,serif;margin:0}
.hero-product figcaption{font-size:11px;color:#726c65;margin-top:14px;line-height:1.5}
.shop-label{font-size:12px;color:#8a613f;margin:0 0 22px}
.shop-intro>p:not(.shop-label){font-size:16px;max-width:350px;margin:22px 0 28px;color:#625d57}
.shop-intro .button{display:flex;width:fit-content;min-height:48px}
.text-link{display:inline-block;color:#30302e;text-underline-offset:5px;font-size:13px;margin-top:18px}
.product-facts{display:flex;flex-direction:column;gap:8px;border-top:1px solid #dedbd4;padding-top:22px;margin-top:28px;font-size:12px;color:#726c65}
.print-collection{max-width:1380px;margin:auto;padding:45px 6vw 64px;border-top:1px solid #dedbd4}
.collection-heading{display:flex;justify-content:space-between;gap:24px;align-items:baseline;margin-bottom:28px}
.collection-heading p{font-size:13px;color:#726c65;margin:0}
.print-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.print-examples figure{margin:0}
.example-paper{background:#fff;border:8px solid #37332f;padding:0;text-align:center;box-shadow:3px 7px 16px #302a241a;position:relative;aspect-ratio:297/210;container-type:inline-size;overflow:hidden}
.example-preset{display:block;color:inherit;text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.example-preset:hover{transform:translateY(-4px);box-shadow:0 13px 0 rgba(55,51,47,.16)}
.example-preset:focus-visible{outline:3px solid #b87943;outline-offset:5px}
.example-paper .showcase-cast{position:absolute;left:3.333cqw;right:3.333cqw;bottom:17.5cqw;height:33.056cqw;gap:.556cqw;transform:scale(var(--cast-scale,1));transform-origin:bottom center}
.example-paper .showcase-cast .example-person{width:16.667cqw;height:33.056cqw;flex:0 0 16.667cqw}
.example-paper .showcase-cast .example-pet{width:10.833cqw;height:16.667cqw;flex:0 0 10.833cqw}
.example-paper .print-name{position:absolute;left:0;right:0;bottom:9.4cqw;font-size:2.6cqw;line-height:1.15;letter-spacing:.11em;font-weight:700;margin:0}
.example-paper .print-note{position:absolute;left:0;right:0;bottom:5.3cqw;font-size:2.3cqw;line-height:1.15;margin:0}
.print-examples figcaption{margin-top:14px;font-size:13px;color:#625d57}
.shop-home .how{padding:44px 6vw 55px;max-width:1380px;margin:auto;text-align:left;border-top:1px solid #dedbd4}
.shop-home .steps{max-width:none;margin:30px 0 0;gap:40px}
.shop-home .steps>div{border-top:1px solid #dedbd4;padding-top:18px}
.shop-home .steps h3{font-size:18px;margin:14px 0 10px}
.shop-home .steps p{font-size:14px;color:#625d57}
.shop-home .builder{padding:60px 6vw;background:#fff;border-top:1px solid #dedbd4;border-bottom:1px solid #dedbd4}
.shop-home .section-intro{max-width:1200px;margin:0 auto 30px;text-align:left}
.shop-home .eyebrow,.panel-kicker,.preview-top{text-transform:none;letter-spacing:0;font-size:13px}
.shop-home .eyebrow{color:#8a613f;margin-bottom:12px}
.shop-home .section-intro p:last-child{font-size:14px;color:#625d57}
.shop-home .builder-grid{max-width:1200px;grid-template-columns:.85fr 1.15fr;gap:48px}
.shop-home .add-panel,.shop-home .live-preview{padding:0;border:0;background:none;border-radius:0}
.shop-home .choices{grid-template-columns:repeat(4,1fr);gap:8px}
.shop-home .choices button{border-radius:3px;border-color:#e1ddd6;padding:18px 4px;background:#faf9f6;min-height:64px}
.shop-home .choices button:hover{transform:none;border-color:#995f32;background:#f5ece1}
.shop-home .choices span,.shop-home .choices small,.shop-home .member>b{display:none}
.shop-home .member{border-radius:3px;background:#f1ede6}
.shop-home .saved{color:#726c65;font-weight:400}
.shop-home .live-preview .preview-canvas{border-radius:0;border:1px solid #dedbd4;box-shadow:none}
.shop-home .preview-note{color:#726c65}
.shop-about{max-width:1380px;margin:auto;padding:64px 6vw;display:grid;grid-template-columns:1fr 2fr;gap:40px}
.shop-about>div{max-width:530px}
.shop-about p:not(.shop-label){color:#625d57;font-size:15px}
.shop-home footer{border-top:1px solid #dedbd4;padding:30px 6vw}
.shop-home footer .brand{width:125px}
.shop-home footer p{font:13px 'DM Sans',sans-serif}
.shop-home footer small{color:#726c65}
/* Readable homepage copy; artwork typography remains independent. */
.shop-home nav a{font-size:17px}
.shop-home .shop-label{font-size:16px}
.shop-home .shop-intro>p:not(.shop-label){font-size:20px;max-width:450px}
.shop-home .text-link{font-size:18px}
.shop-home .product-facts{font-size:18px;line-height:1.5}
.shop-home .hero-product figcaption{font-size:16px;line-height:1.6}
.shop-home .collection-heading p,.shop-home .print-examples figcaption{font-size:18px;line-height:1.6}
.shop-home .steps span{font-size:16px}
.shop-home .steps h3{font-size:23px}
.shop-home .steps p,.shop-home .section-intro p:last-child,.shop-home .shop-about p:not(.shop-label){font-size:19px}
.shop-home .eyebrow,.shop-home .panel-kicker,.shop-home .preview-top{font-size:17px}
.shop-home .saved,.shop-home .preview-note{font-size:15px}
.shop-home .choices b,.shop-home .member{font-size:16px}
.shop-home .print-size-picker button,.shop-home .print-size-label{font-size:15px}
.shop-home footer p,.shop-home footer small{font-size:16px;line-height:1.6}
@media(max-width:780px){
 .shop-home{zoom:1;width:auto}
 .shop-hero{grid-template-columns:minmax(0,1fr);gap:30px;padding:28px 6vw 42px}
 .hero-product{transform:none}
 .shop-intro h1 br{display:block}
 .shop-intro h1{max-width:340px}.shop-intro>p:not(.shop-label){max-width:none}
 .product-paper{min-height:300px;padding:24px 20px}
 .showcase-cast{height:205px}.showcase-cast .example-person{height:190px}
 .showcase-cast .example-pet{height:98px}
 .collection-heading{display:block}.collection-heading p{margin-top:12px}
 .print-examples{grid-template-columns:1fr;gap:28px}
 .shop-home .steps{grid-template-columns:1fr;gap:12px}
 .shop-home .builder-grid{grid-template-columns:1fr;gap:30px}
 .shop-home .choices{grid-template-columns:repeat(4,1fr)}
 .shop-about{grid-template-columns:1fr;gap:12px}
 .shop-home .nav{height:100px}.shop-home .brand{width:120px}
 .shop-home .nav-cta{font-size:16px}
}
