/* Desktop layout measured against the supplied reference at 1440px.
   The mobile stylesheet and the goods editor remain independent. */
.pc-only,.desktop-heading,.collection-controls,.collection-track,.policy-navigation,.catalog-image .catalog-alternate,.catalog-image .catalog-preview-label{display:none}
.hero h1>.mobile-heading{color:var(--ink)}
.hero h1 .mobile-heading>span{color:var(--accent)}
@media(min-width:1001px){
  :root{--paper:#fffefa;--ink:#343630;--accent:#af432f;--line:#e9e7e1}
  html{scroll-padding-top:128px}
  body{background:var(--paper);color:var(--ink)}
  .pc-only{display:block}
  .container{width:calc(100% - 48px);max-width:none}
  .beta-notice{position:fixed;inset:0 0 auto;height:32px;padding:7px 24px;background:rgba(83,65,48,.36);backdrop-filter:blur(16px);color:#fff;z-index:51;text-align:center;font-size:11px;line-height:18px;letter-spacing:0}
  .site-header{position:fixed;inset:32px 0 auto;background:transparent;color:#fff;border:0;backdrop-filter:none;z-index:50;transition:background .2s,color .2s}
  .site-header.is-scrolled{background:var(--paper);color:var(--ink);box-shadow:0 1px 0 var(--line)}
  .header-inner{min-height:80px;gap:32px}
  .brand{font-size:18px;font-weight:500;letter-spacing:-.8px;line-height:1.2;gap:8px;color:inherit;flex-shrink:0}
  .brand-mark{width:20px;height:24px}.brand-english{font-size:7px;letter-spacing:1.4px;font-weight:400;margin-top:4px}
  .header-caption{font-size:12px;white-space:nowrap;margin-right:auto}
  .site-navigation{gap:26px;margin-left:auto;align-items:center}
  .site-navigation>a{font-size:13px;font-weight:400;white-space:nowrap;color:inherit}
  .site-navigation .nav-cta{background:none;border:0;color:inherit;border-radius:0;padding:0;min-height:44px;font-size:13px;font-weight:400;margin:0;box-shadow:none}
  .site-navigation .nav-cta span{display:none}
  .site-navigation .pc-only{display:flex}
  .button,.button-small,.button-outline,.text-link{box-shadow:none;font-size:13px;font-weight:400;letter-spacing:0}
  .button,.button-small,.button-outline{min-height:48px;padding:0 14px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink)}
  .button:hover,.button-outline:hover{background:var(--ink);color:var(--paper);transform:none;box-shadow:none}
  .text-link{text-underline-offset:5px}
  #main{display:flex;flex-direction:column}
  .hero.container{order:0;display:block;position:relative;width:100%;max-width:none;height:34.6vw;min-height:400px;max-height:690px;margin:0;padding:0;background:#715438 url('/media/home-hero-wide-v2.png') center/cover no-repeat;isolation:isolate}
  .hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,22,17,.18),transparent 40%,rgba(27,22,17,.08));pointer-events:none;z-index:-1}
  .hero-copy{position:absolute;left:calc(50% + 12px);right:24px;bottom:24px;padding:0;background:none;max-width:none;color:#fff}
  .hero-copy>.eyebrow,.hero-description,.hero-note,.hero-gallery{display:none}
  .hero h1{font-family:Georgia,'Batang',serif;font-weight:400;font-size:64px;line-height:1.15;letter-spacing:-1.7px;margin:0 0 32px;color:#fff}
  .hero h1 .desktop-heading{display:block;color:#fff;white-space:normal}
  .hero h1 .mobile-heading{display:none}
  .hero-actions{margin:0;display:block}
  .hero-actions>.button{display:none}
  .hero-actions>.text-link{display:inline-flex;align-items:center;min-height:48px;padding:0 14px;border:1px solid rgba(255,255,255,.85);color:#fff;text-decoration:none;font-size:13px}
  .hero-actions>.text-link span{display:none}
  .hero-actions>.text-link:hover{background:#fff;color:var(--ink)}
  .hero-image-note{position:absolute;left:24px;bottom:15px;color:#fff;font-size:9px;margin:0;text-shadow:0 1px 3px #30261b}
  .value-strip,.promise-strip{display:none}
  .collection-index.container{display:block;width:100%;order:1;position:relative;padding:68px 0 24px;margin:0;background:var(--paper);border:0}
  .collection-controls{position:absolute;left:24px;right:24px;top:22px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.collection-controls>div{display:flex;gap:4px}.mobile-template-content{display:none}
  .collection-controls button{width:30px;height:30px;border:0;background:none;color:var(--ink);font-size:23px;font-weight:300;cursor:pointer}
  .collection-controls button:disabled{opacity:.25;cursor:default}
  .collection-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 24px}
  .collection-track::-webkit-scrollbar{display:none}
  .collection-track>a{position:relative;flex:0 0 calc((100vw - 96px)/4.35);aspect-ratio:.642;overflow:hidden;scroll-snap-align:start;border:0;padding:0;background:#e6ded4;color:#fff}
  .collection-track img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
  .collection-track>a:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(24,20,16,.36))}
  .collection-track>a:hover img{transform:scale(1.025)}
  .collection-track strong{position:absolute;left:16px;right:10px;bottom:18px;z-index:1;font-family:'Batang',Georgia,serif;font-size:28px;font-weight:400;letter-spacing:-1px;line-height:1.3}
  .feature-story{order:2;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px 24px 0;align-items:stretch}
  .feature-copy{padding:34px 0;display:block;min-width:0;background:radial-gradient(ellipse at 60% 85%,rgba(237,220,201,.25),transparent 42%)}
  .feature-copy h2,.together-copy h2{font-family:Georgia,'Batang',serif;font-size:64px;font-weight:400;line-height:1.1;letter-spacing:-1.6px;margin:0 0 24px}
  .feature-copy p{font-size:13px;margin:0 0 28px;color:#77786f;line-height:1.8}
  .desktop-showcase{display:block;position:relative;width:100%;min-width:0;min-height:0;padding:0;margin:0;background:#e8e0d4;border:0;border-radius:0;overflow:hidden}
  .showcase-heading{display:none}
  .showcase-window{position:relative;aspect-ratio: .86;min-height:0;height:auto;overflow:hidden;border-radius:0}
  .showcase-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .65s}
  .showcase-slide.is-active{opacity:1;visibility:visible}
  .showcase-slide>a,.showcase-slide img{display:block;width:100%;height:100%}
  .showcase-slide img{object-fit:cover;transform:none}
  .showcase-slide figcaption{display:none}
  .showcase-controls{position:absolute;inset:auto 18px 30px;display:flex;align-items:center;justify-content:space-between;color:#fff;padding:0;border:0;z-index:2}
  .showcase-controls button{border:0;background:rgba(44,34,23,.18);color:#fff;border-radius:0;min-width:30px;min-height:30px;font-size:11px;cursor:pointer}
  .showcase-dots{display:flex;gap:5px}.showcase-dots button{background:none;padding:12px 3px;min-width:16px}
  .showcase-dots button span{display:block;width:5px;height:5px;border-radius:50%;background:#bdb9b0}
  .showcase-dots button[aria-current=true] span{background:#fff}
  .showcase-transport{display:flex;gap:4px}.showcase-note{position:absolute;bottom:7px;left:18px;right:18px;font-size:9px;color:#fff;margin:0;text-shadow:0 1px 3px #332a20}
  .goods-section{order:3;padding:72px 0 30px}
  .goods-section>.section-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px}
  .goods-section .eyebrow,.goods-section .section-description{display:none}
  .goods-section h2{font-size:13px;font-weight:400;letter-spacing:0;line-height:1.4;margin:0}
  .goods-section h2 .mobile-break{display:none}
  .availability-badge{background:none;border:0;font-size:10px;font-weight:400;color:#7b7c73;padding:0}
  .availability-badge>span{display:none}
  .catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
  .catalog-card{min-width:0;background:none;border:0;box-shadow:none;border-radius:0}
  .catalog-image{position:relative;aspect-ratio:3/4;border-radius:0;overflow:hidden;background:#fff}
  .catalog-image picture{display:block;width:100%;height:100%}
  .catalog-image img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0;mix-blend-mode:normal;transition:transform .45s}
  .catalog-image:hover img{transform:scale(1.035)}
  .catalog-image>span{display:none}
  .catalog-image:after{content:'PHOTO GOODS';position:absolute;left:14px;top:14px;background:var(--paper);padding:6px 8px;font-size:9px;color:#65675f}
  .catalog-caption{padding-top:18px}
  .catalog-category,.catalog-caption h3 span,.catalog-caption>p:not(.catalog-price){display:none}
  .catalog-caption h3{font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;margin:0 0 8px}
  .catalog-price{font-size:12px;font-weight:400;color:#74766d;margin:0 0 18px;line-height:1.5}
  .catalog-price small{font-size:10px;color:#8c8d85;font-weight:400}
  .catalog-detail{display:flex;align-items:center;justify-content:space-between;min-height:48px;width:100%;border:1px solid #6f7168;padding:0 14px;font-size:12px;font-weight:400;color:var(--ink);text-decoration:none;box-sizing:border-box}
  .catalog-detail:hover{background:var(--ink);color:var(--paper)}
  .catalog-note{font-size:10px;line-height:1.8;color:#84867c;margin-top:20px}
  .goods-bottom{display:none}
  .together-section{order:4;background:var(--paper);padding:24px 0 0}
  .together-inner{padding-block:0;width:calc(100% - 48px);max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
  .together-art{margin:0;padding:0;position:relative;border:0;border-radius:0;box-shadow:none;transform:none;max-width:none;height:auto;aspect-ratio:.86;overflow:hidden}
  .together-art picture,.together-art img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
  .together-art>p{position:absolute;bottom:12px;left:16px;color:#fff;font-size:9px;margin:0}.photo-corner{display:none}
  .together-copy{padding:34px 0;align-self:stretch;display:block;min-width:0;background:radial-gradient(ellipse at 40% 85%,rgba(230,216,201,.26),transparent 45%)}
  .together-copy .eyebrow,.together-copy .story-copy-content>p:not(.subtle-note){display:none}
  .together-copy h2 .mobile-copy{display:none}.together-copy h2 .pc-only{display:block}
  .together-copy .button{margin-top:0}.together-copy .subtle-note{font-size:10px;color:#898b80;margin-top:18px}
  #more-goods{order:5;padding:72px 0 32px}
  .template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
  .template-image{border-radius:0;aspect-ratio:3/4;overflow:hidden}.template-image img{border-radius:0;object-fit:cover}
  .image-tag{top:12px;left:12px;bottom:auto;background:var(--paper);border-radius:0;color:#65675f;font-size:9px;letter-spacing:0;padding:6px 8px}
  .template-caption{padding-top:18px}.template-caption h3{font-size:13px;font-weight:400;letter-spacing:0}.template-caption p{font-size:11px;color:#84867c;margin-top:7px}.template-caption>span{font-size:16px;font-weight:400}
  .section-footnote{font-size:10px;color:#84867c;margin-top:20px}
  .memory-banner{order:6;position:relative;margin:32px 0 48px;height:34vw;min-height:360px;max-height:660px;overflow:hidden;background:#70543f}
  .memory-banner img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:brightness(.8)}
  .memory-banner>div{position:absolute;left:calc(50% + 12px);bottom:24px;color:#fff}
  .memory-banner h2{font:400 64px/1.15 Georgia,'Batang',serif;letter-spacing:-1.6px;margin:0 0 30px}
  .memory-banner .button{border-color:#fff;color:#fff}.memory-banner .button:hover{background:#fff;color:var(--ink)}
  .plans-section{order:7;padding:24px 0 60px;border:0}
  .plans-section .section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}
  .plans-section .eyebrow{display:none}.plans-section h2{font:400 36px/1.3 Georgia,'Batang',serif;letter-spacing:-1px;margin:0}
  .plans-section .section-description{font-size:12px;color:#84867c;margin-top:12px}
  .plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;border:0}
  .plan-card,.plan-card:last-child{border:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;padding:30px}
  .plan-card h3{font-size:21px;font-weight:400}.plan-card>p:not(.plan-price){font-size:12px;color:#838579}.plan-card .plan-price{font-size:30px;font-weight:400}.plan-card li{font-size:12px}.plan-card .text-link{font-size:12px}
  .album-section,.how-section,.closing-section{display:none}
  .faq-section{order:8;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:32px 0 72px;border-top:1px solid var(--line)}
  .faq-heading h2{font:400 40px/1.3 Georgia,'Batang',serif;margin:0 0 24px}.faq-heading>.eyebrow,.faq-heading>.section-description{display:none}
  .faq-list details{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}
  .faq-list summary{padding:20px 0;font-size:13px;font-weight:400}.faq-list p{font-size:12px;line-height:1.85}
  .site-footer{padding:0 0 22px;background:var(--paper);border-top:1px solid var(--line)}
  .footer-top{display:none}
  .footer-service-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:34px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}
  .footer-service-row a{display:flex;gap:12px;align-items:center}.footer-service-row b{font-size:17px;font-weight:400;color:var(--accent)}
  .footer-directory{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:54px 0 44px}
  .footer-directory h2{font:400 30px/1.3 Georgia,'Batang',serif;margin:0 0 18px}.footer-directory p{font-size:12px;line-height:1.8;color:#7d8075;margin:0 0 20px}
  .footer-directory h3{font-size:13px;font-weight:500;margin:0 0 20px}.footer-directory nav{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:12px}
  .footer-directory .text-link{font-size:12px}.business-information{border-top:1px solid var(--line);padding-top:24px;font-size:10px}.business-information dl{gap:7px 24px}.business-information dt{font-weight:400}.footer-bottom{font-size:10px;color:#85877d;margin-top:20px}
  .policy-header{max-width:none;margin:0;padding:24px;min-height:96px;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);gap:24px}
  .policy-brand{font-size:19px;font-weight:500;color:var(--accent);letter-spacing:-.6px}.policy-brand span{font-size:8px;font-weight:400;letter-spacing:1.4px}
  .policy-navigation{display:flex;gap:26px;margin-left:auto;font-size:13px}
  .policy-header .policy-button{background:none;color:var(--ink);border:0;padding:0;font-weight:400;font-size:13px}
  .policy-button,.product-cta{border-radius:0;font-weight:400}
  .policy-main{max-width:1000px;padding:40px 24px 80px}.policy-main>h1{font-size:32px;font-weight:400}.policy-main h2{font-weight:500}.policy-notice{border-radius:0;background:#f4f2ec}
  .policy-footer{max-width:none;padding:40px 24px;background:var(--paper);border-top:1px solid var(--line)}
  .product-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px;max-width:none;padding:24px 24px 80px;align-items:start}
  .product-page>.policy-back{grid-column:1/-1;margin-bottom:16px;font-size:12px}
  .product-page>.policy-eyebrow{display:none}
  .product-page>h1,.product-page>.policy-lead,.product-page>section{grid-column:2;max-width:560px;width:100%}
  .product-page>h1{font-family:Arial,'Malgun Gothic',sans-serif;font-size:25px;line-height:1.3;letter-spacing:-.5px;margin:0 0 14px}
  .product-page>.policy-lead{font-size:13px;line-height:1.75;margin:0 0 12px}
  .product-page .product-intro{display:contents}
  .product-page .product-main-image{display:block;position:sticky;top:120px;grid-column:1;grid-row:2/span 24;align-self:start;width:100%;max-height:calc(100dvh - 144px);border-radius:0;background:#f5f4ef}
  .product-main-image img{display:block;width:100%;height:100%;max-height:inherit;object-fit:contain}
  .product-page .product-intro>div{grid-column:2;max-width:560px;width:100%}
  .product-page .product-intro .policy-eyebrow{display:none}
  .product-page .product-price{font-size:16px;font-weight:500;margin:6px 0 16px}
  .product-page .product-intro p{font-size:12px;line-height:1.8}.product-page .product-intro .policy-muted{font-size:11px;color:#8b8d82}
  .product-page .product-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;background:var(--ink);color:#fff;padding:10px 16px;box-sizing:border-box;font-size:13px;text-decoration:none}
  .product-page .product-intro>div>a:last-child{background:transparent;border:1px solid var(--ink);color:var(--ink)}
  .product-page>section{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
  .product-page>section h2{font-size:13px;margin:0 0 14px;font-weight:500}.product-page>section p{font-size:12px;line-height:1.85}
  .product-page .delivery-callout{border-radius:0;background:transparent;border:0;border-block:1px solid var(--line);padding:16px 0;font-size:12px}
  .product-specs{border-color:var(--line);font-size:12px}.supplier-image{border-radius:0}
  body:has(#checkout) header{max-width:none;padding:24px;border-bottom:1px solid var(--line)}
  body:has(#checkout) main{max-width:1160px}body:has(#checkout) h1{font-weight:400;font-size:32px}body:has(#checkout) h2,body:has(#checkout) h3{font-weight:500}
  body:has(#checkout) .summary,body:has(#checkout) section,body:has(#checkout) input,body:has(#checkout) button,body:has(#checkout) .test-notice,body:has(#checkout) .method,body:has(#checkout) .payment-method,body:has(#checkout) .product img{border-radius:0!important}
  body:has(#checkout) footer{max-width:none;padding:32px 24px;background:var(--paper);border-top:1px solid var(--line)}
}
@media(min-width:1001px) and (max-width:1199px){
  .header-caption{display:none}.site-navigation{gap:20px}.hero h1,.feature-copy h2,.together-copy h2,.memory-banner h2{font-size:52px}.collection-track strong{font-size:24px}.catalog-detail{font-size:11px;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce){.showcase-slide,.collection-track img,.catalog-image img,.site-header{transition:none}.collection-track{scroll-behavior:auto}}

@media(min-width:1001px){.site-navigation .nav-cta .mobile-nav-label{display:none}.site-navigation .nav-cta .pc-only{display:inline}}
.product-main-image img{display:block;width:100%;height:auto;border-radius:inherit}
.catalog-image picture{display:block;width:100%;height:100%}
.mobile-nav-label{font:inherit!important}
@media(min-width:1001px){.collection-track{scroll-padding-inline:24px}.site-navigation .nav-cta .pc-only{font:inherit}.header-inner{height:80px}.site-header .brand-mark,.site-header .brand-english{color:inherit}.hero.container{height:calc((100vw - 15px)*.346)}.product-page .product-main-image img{max-height:calc(100dvh - 144px);object-fit:contain}.together-art{width:100%}}

/* Reference interactions: bound the copy to its own image section. */
@media(min-width:1001px){
  .story-copy-content{position:sticky;top:150px;display:flex;flex-direction:column;align-items:flex-start}
  .collection-track{cursor:grab;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}
  .collection-track>a{cursor:inherit}
  .collection-track img{-webkit-user-drag:none}
  .collection-track.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
  .collection-track.is-dragging>a{pointer-events:none}
  .collection-track.is-dragging img{transform:none}
  .catalog-image img{transition:opacity .45s ease,transform .6s ease}
  .catalog-image .catalog-alternate{display:block;position:absolute;inset:0;object-fit:cover;mix-blend-mode:normal;opacity:0;transform:scale(1.02);pointer-events:none}
  .catalog-image:after{transition:opacity .3s}
  .catalog-image .catalog-preview-label{display:block;position:absolute;inset:auto 12px 12px auto;background:rgba(255,254,250,.9);padding:5px 8px;font-size:9px;color:var(--ink);opacity:0;transition:opacity .3s;pointer-events:none}
  .catalog-image:focus-visible .catalog-alternate,.catalog-image:focus-visible .catalog-preview-label{opacity:1;transform:none}
  .catalog-image:focus-visible:after{opacity:0}
  #more-goods .section-heading .text-link{font-size:11px}
}
@media(min-width:1001px) and (hover:hover){
  .catalog-image:hover .catalog-alternate,.catalog-image:hover .catalog-preview-label{opacity:1;transform:none}
  .catalog-image:hover:after{opacity:0}
}
@media(prefers-reduced-motion:reduce){.catalog-image img,.catalog-image:after,.catalog-image .catalog-preview-label{transition:none}}
