/* Product pages share the approved Roofline type, palette and two-dimensional mark. */
.product-page{--product-accent:var(--lime);font-family:Figtree,system-ui,sans-serif}
.product-page.product-cats{--product-accent:var(--coral)}
.product-page.product-christmas{--product-accent:#D8C8E6}
.product-page .site-header nav a:last-child{display:inline-flex}
.product-page .site-header nav a{min-height:44px;align-items:center}
.product-page .site-header .header-action{gap:16px}
.product-page .product-main{overflow:clip}
.product-page .product-breadcrumb{padding-top:28px}
.product-page .product-breadcrumb a{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:13px;color:var(--purple)}
.product-page .product-breadcrumb a:hover{text-decoration:underline;text-underline-offset:5px}
.product-page .product-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:7%;align-items:center;padding-top:34px;padding-bottom:84px}
.product-page .product-hero-copy{grid-column:2;grid-row:1;min-width:0;max-width:570px}
.product-page .product-hero h1{font-size:clamp(48px,5.4vw,76px);font-weight:550;line-height:1.02;color:var(--purple);margin-top:18px;overflow-wrap:normal}
.product-page .product-subtitle{font-family:Bricolage,system-ui,sans-serif;font-size:clamp(23px,2.1vw,29px);font-weight:450;line-height:1.18;letter-spacing:-.025em;color:var(--purple);margin-top:18px;max-width:500px}
.product-page .product-description{font-size:16px;line-height:1.65;color:var(--muted);margin-top:24px;max-width:470px}
.product-page .product-hero-figure{grid-column:1;grid-row:1;position:relative;display:grid;justify-items:center;min-width:0;padding:30px 32px 0;isolation:isolate}
.product-page .product-hero-figure::before{content:"";position:absolute;inset:2% 1% 5%;z-index:-1;background:var(--product-accent);border-radius:43% 47% 38% 52% / 18% 24% 16% 21%;transform:rotate(-3deg)}
.product-page .product-cover{display:block;max-width:100%;width:360px;height:auto;box-shadow:0 18px 35px #3d285929;transform:rotate(-2deg)}
.product-page .product-hero-figure--drawing .product-cover{background:white;border:9px solid white;box-shadow:0 18px 35px #3d28591c}
.product-page .product-hero-figure figcaption{font-size:11px;line-height:1.45;color:var(--muted);text-align:center;margin:24px 0 0;max-width:340px;padding-bottom:7px}
.product-page .product-highlights{display:grid;grid-template-columns:1fr 1fr;gap:19px 25px;margin:29px 0 0;padding:23px 0;border-top:1px solid #603e9130;border-bottom:1px solid #603e9130}
.product-page .product-highlights div{min-width:0}
.product-page .product-highlights dt{font-size:10px;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.product-page .product-highlights dd{font-family:Bricolage,system-ui,sans-serif;font-size:24px;font-weight:500;line-height:1.18;letter-spacing:-.035em;margin:5px 0 0;color:var(--purple)}
.product-page .product-buy{width:fit-content;min-width:218px;margin-top:26px;gap:40px}
.product-page .product-purchase-note{font-size:11px;line-height:1.55;color:var(--muted);margin-top:13px;max-width:410px}
.product-page .product-text-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:550;color:var(--purple);text-decoration:underline;text-underline-offset:5px}
.product-page .product-hero-copy>.product-text-link{margin-top:8px}
.product-page a,.product-page summary{scroll-margin-block:24px}
.product-page .product-section{padding-top:66px;padding-bottom:76px;scroll-margin-top:26px}
.product-page .product-section-title{font-size:clamp(34px,3.8vw,52px);font-weight:500;line-height:1.08;color:var(--purple)}
.product-page .product-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}
.product-page .product-section-heading>p{font-size:15px;line-height:1.65;color:var(--muted);max-width:400px}
.product-page .product-inside{border-top:1px solid #603e912b}
.product-page .product-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.product-page .product-sample{min-width:0}
.product-page .product-sample>a{display:block;padding:18px 18px 0;background:#F2ECDFA3;border:1px solid #603e911c;border-radius:8px;color:var(--purple)}
.product-page .product-sample>a:hover{background:var(--lavender)}
.product-page .product-sample img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:white;box-shadow:0 4px 13px #3d285912}
.product-page .product-sample>a>span{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;font-size:12px;font-weight:550}
.product-page .product-sample>a>span>span{font-size:22px;font-weight:400}
.product-page .product-sample figcaption{font-size:13px;line-height:1.5;color:var(--purple);margin-top:16px}
.product-page .product-sample figcaption>span{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.product-page .product-inside-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:25px;max-width:760px}
.product-page .product-feature-band{background:var(--lavender)}
.product-page .product-feature-layout{display:grid;grid-template-columns:.9fr 1fr;gap:10%;align-items:start}
.product-page .product-feature-copy .eyebrow{margin-bottom:20px}
.product-page .product-feature-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;color:var(--muted);margin-top:23px;max-width:460px}
.product-page .product-feature-list{list-style:none;margin:0;padding:0}
.product-page .product-feature-list li{padding:22px 0;border-bottom:1px solid #603e912b}
.product-page .product-feature-list li:first-child{padding-top:0}
.product-page .product-feature-list h3{font-size:23px;font-weight:500;line-height:1.15;color:var(--purple)}
.product-page .product-feature-list p{font-size:15px;line-height:1.65;color:var(--muted);margin-top:11px;max-width:500px}
.product-page .product-guide{padding-top:76px;padding-bottom:76px;scroll-margin-top:26px}
.product-page .product-guide-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.1fr);gap:45px;background:var(--lavender);border-radius:16px;padding:clamp(24px,4vw,52px);align-items:center}
.product-page .product-guide-art{min-width:0;max-width:350px;margin-inline:auto;transform:rotate(-2deg)}
.product-page .product-guide-art img{display:block;width:100%;height:auto;border:9px solid white;box-shadow:0 12px 25px #3d285924}
.product-page .product-guide-art figcaption{font-size:11px;line-height:1.55;color:var(--muted);margin-top:17px;max-width:350px}
.product-page .product-guide-copy{min-width:0}
.product-page .product-guide-copy h2{margin-top:18px}
.product-page .product-guide-copy>p:not(.eyebrow){font-size:15px;line-height:1.65;color:var(--muted);margin-top:20px}
.product-page .product-guide-access{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;margin-top:29px;padding:22px;background:var(--cream);border-radius:9px}
.product-page .product-guide-access img{display:block;width:180px;height:180px;max-width:100%;image-rendering:pixelated;background:white}
.product-page .product-guide-access h3{font-size:22px;font-weight:500;line-height:1.15;color:var(--purple)}
.product-page .product-guide-access p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:10px}
.product-page .product-guide-access .button{font-size:12px;line-height:1.4;gap:16px;min-height:49px;padding:12px;margin-top:17px}
.product-page .product-guide-access .button>span{font-size:21px;flex-shrink:0}
.product-page .product-edition{display:grid;grid-template-columns:.9fr 1fr;gap:10%;align-items:start;border-top:1px solid #603e912b}
.product-page .product-edition>div>p{font-size:15px;line-height:1.65;color:var(--muted);margin-top:22px;max-width:440px}
.product-page .product-details{margin:0;padding:0}
.product-page .product-details>div{display:grid;grid-template-columns:1fr 1.4fr;gap:22px;padding:16px 0;border-bottom:1px solid #603e912b;font-size:14px;line-height:1.5}
.product-page .product-details>div:first-child{padding-top:0}
.product-page .product-details dt{color:var(--muted)}
.product-page .product-details dd{margin:0;color:var(--purple);font-weight:500;overflow-wrap:anywhere}
.product-page .product-questions{display:grid;grid-template-columns:.9fr 1fr;gap:10%;border-top:1px solid #603e912b}
.product-page .product-questions details{border-bottom:1px solid #603e912b;padding:19px 0}
.product-page .product-questions details:first-child{padding-top:0}
.product-page .product-questions summary{font-family:Bricolage,system-ui,sans-serif;font-size:21px;font-weight:500;line-height:1.25;letter-spacing:-.025em;color:var(--purple);cursor:pointer;min-height:32px}
.product-page .product-questions details p{font-size:14px;line-height:1.65;color:var(--muted);margin-top:16px;max-width:510px}
.product-page .product-questions summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}
.product-page .product-purchase{background:var(--purple);color:var(--cream);padding-block:57px}
.product-page .product-purchase-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.product-page .product-purchase h2{font-size:clamp(31px,3.6vw,49px);font-weight:500;line-height:1.1;max-width:650px}
.product-page .product-purchase p{font-size:14px;line-height:1.6;color:var(--cream);margin-top:17px}
.product-page .product-purchase .button{background:var(--cream);color:var(--purple);border-color:var(--cream);margin:0;flex-shrink:0}
.product-page .product-purchase .button:hover{background:var(--lime);border-color:var(--lime)}
.product-page .product-purchase .button:focus-visible{outline-color:var(--cream)}
.product-page .product-related{padding-top:65px;padding-bottom:74px}
.product-page .product-related h2{font-size:32px;font-weight:500;line-height:1.15;color:var(--purple)}
.product-page .product-related-list{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}
.product-page .product-related-list a{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:24px;align-items:center;padding:20px 0;border-top:1px solid #603e912b;color:var(--purple);min-width:0}
.product-page .product-related-list img{display:block;width:84px;height:112px;object-fit:contain;background:white}
.product-page .product-related-list h3{font-size:23px;font-weight:500;line-height:1.15}
.product-page .product-related-list p{font-size:11px;line-height:1.5;color:var(--muted);margin-top:9px}
.product-page .product-related-list a>span{font-size:25px}
.product-page .product-related-list a:hover h3{text-decoration:underline;text-underline-offset:5px}
.product-page .product-viewer{width:min(900px,calc(100vw - 32px))}
.product-page .product-viewer .viewer-image{margin-top:22px;max-height:68svh}
.product-page .product-viewer .product-viewer-caption{font-size:12px;line-height:1.55;color:var(--muted);margin-top:17px}
@media(max-width:1100px){.product-page .product-hero{gap:5%}.product-page .product-hero-figure{padding-inline:20px}.product-page .product-guide-panel{gap:28px}.product-page .product-guide-access{padding:17px;gap:17px;grid-template-columns:180px minmax(0,1fr)}.product-page .product-guide-access img{width:180px;height:180px}.product-page .product-feature-layout,.product-page .product-edition,.product-page .product-questions{gap:7%}}
@media(max-width:900px){.product-page .product-hero{grid-template-columns:1fr;padding-top:25px;gap:43px;padding-bottom:60px}.product-page .product-hero-copy{grid-column:1;grid-row:auto;max-width:650px}.product-page .product-hero h1{font-size:58px;max-width:640px}.product-page .product-hero-figure{grid-column:1;grid-row:auto;width:min(100%,430px);justify-self:center;padding-inline:24px}.product-page .product-cover{width:310px}.product-page .product-highlights{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-page .product-highlights dd{font-size:23px}.product-page .product-hero-copy .product-description{max-width:560px}.product-page .product-section-heading{display:block}.product-page .product-section-heading>p{margin-top:20px;max-width:560px}.product-page .product-gallery{gap:18px}.product-page .product-sample>a{padding:12px 12px 0}.product-page .product-guide-panel{grid-template-columns:1fr;gap:38px}.product-page .product-guide-art{grid-row:2;max-width:300px}.product-page .product-guide-copy{grid-row:1}.product-page .product-guide-access{grid-template-columns:225px minmax(0,1fr);padding:22px;gap:27px;max-width:620px}.product-page .product-guide-access img{width:225px;height:225px}.product-page .product-guide-access h3{font-size:25px}.product-page .product-guide-access p{font-size:14px}.product-page .product-guide-access .button{font-size:13px}.product-page .product-feature-layout,.product-page .product-edition,.product-page .product-questions{grid-template-columns:1fr;gap:35px}.product-page .product-feature-copy>p:not(.eyebrow),.product-page .product-edition>div>p{max-width:610px}.product-page .product-feature-list p{max-width:610px}.product-page .product-details{max-width:660px}.product-page .product-purchase-inner{align-items:start;flex-direction:column;gap:27px}.product-page .product-related-list{gap:25px}.product-page .product-related-list a{grid-template-columns:64px minmax(0,1fr);gap:18px}.product-page .product-related-list img{width:64px;height:85px}.product-page .product-related-list a>span{display:none}.product-page .product-related-list h3{font-size:22px}}
@media(max-width:600px){.product-page .product-breadcrumb{padding-top:15px}.product-page .product-hero{padding-top:23px;gap:33px}.product-page .product-hero h1{font-size:46px;line-height:1.04;margin-top:15px}.product-page .product-subtitle{font-size:25px;margin-top:16px}.product-page .product-description{font-size:15px;margin-top:21px}.product-page .product-highlights{grid-template-columns:1fr 1fr;gap:20px 18px;margin-top:25px;padding-block:20px}.product-page .product-highlights dd{font-size:24px}.product-page .product-hero-figure{width:min(100%,350px);padding:23px 20px 0}.product-page .product-cover{width:265px}.product-page .product-hero-figure figcaption{font-size:10px;margin-top:22px}.product-page .product-buy{min-height:54px;margin-top:24px}.product-page .product-section{padding-top:48px;padding-bottom:52px}.product-page .product-section-title{font-size:36px}.product-page .product-section-heading{margin-bottom:27px}.product-page .product-section-heading>p{font-size:14px;margin-top:18px}.product-page .product-gallery{grid-template-columns:1fr;gap:30px;max-width:360px;margin-inline:auto}.product-page .product-sample>a{padding:18px 18px 0}.product-page .product-sample>a>span{min-height:49px}.product-page .product-sample figcaption{font-size:13px;margin-top:13px}.product-page .product-inside-note{font-size:11px;line-height:1.65;margin-top:25px}.product-page .product-feature-copy>p:not(.eyebrow){font-size:15px}.product-page .product-feature-list h3{font-size:23px}.product-page .product-feature-list p{font-size:14px}.product-page .product-guide{padding-block:52px}.product-page .product-guide-panel{padding:27px 24px;border-radius:12px;gap:33px}.product-page .product-guide-copy>p:not(.eyebrow){font-size:14px}.product-page .product-guide-access{display:flex;flex-direction:column;align-items:center;gap:20px;padding:25px 0 0;text-align:center;border-top:1px solid #603e9133;border-radius:0;background:transparent}.product-page .product-guide-access>div{width:100%;max-width:320px}.product-page .product-guide-access h3{font-size:24px}.product-page .product-guide-access p{font-size:13px}.product-page .product-guide-access .button{width:100%;max-width:310px;font-size:13px;justify-content:space-between;min-height:53px}.product-page .product-guide-art{max-width:280px;transform:none}.product-page .product-guide-art figcaption{font-size:10px}.product-page .product-details>div{grid-template-columns:.9fr 1.2fr;gap:18px;font-size:13px;padding-block:15px}.product-page .product-edition>div>p{font-size:14px}.product-page .product-questions summary{font-size:21px}.product-page .product-questions details p{font-size:14px}.product-page .product-purchase{padding-block:44px}.product-page .product-purchase h2{font-size:35px}.product-page .product-purchase p{font-size:13px}.product-page .product-purchase .button{width:100%;max-width:330px;min-height:54px}.product-page .product-related{padding-block:48px 50px}.product-page .product-related h2{font-size:29px}.product-page .product-related-list{grid-template-columns:1fr;gap:10px;margin-top:25px}.product-page .product-related-list a{grid-template-columns:70px minmax(0,1fr) auto;gap:20px}.product-page .product-related-list img{width:70px;height:93px}.product-page .product-related-list a>span{display:block}.product-page .product-related-list h3{font-size:23px}.product-page .product-page-note{font-size:11px}}
@media(max-width:360px){.product-page .product-hero h1{font-size:41px}.product-page .product-subtitle{font-size:23px}.product-page .product-guide-panel{padding-inline:24px}.product-page .product-guide-access h3{font-size:22px}.product-page .product-guide-access .button{font-size:12px}.product-page .product-related-list h3{font-size:21px}}
@media(max-width:600px){.product-page .product-hero{display:flex;flex-direction:column;align-items:stretch;gap:0}.product-page .product-hero-copy{display:contents}.product-page .product-hero .eyebrow{order:1}.product-page .product-hero h1{order:2}.product-page .product-hero .product-subtitle{order:3}.product-page .product-hero .product-hero-figure{order:4;align-self:center;margin-top:28px;margin-bottom:6px}.product-page .product-hero .product-description{order:5}.product-page .product-hero .product-highlights{order:6}.product-page .product-hero .product-buy{order:7}.product-page .product-hero .product-purchase-note{order:8}.product-page .product-hero-copy>.product-text-link{order:9}.product-page .product-hero .product-highlights dd{font-size:23px}}
@media(prefers-reduced-motion:reduce){.product-page *, .product-page *::before,.product-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
