.language-picker{display:flex;align-items:center;gap:6px;margin-left:16px;font-size:13px;white-space:nowrap}.language-picker select{font:inherit;background:transparent;color:inherit;border:0;max-width:115px;min-height:38px;padding:4px 6px;cursor:pointer}.language-mobile{display:none}.service-intro{padding:25px 6%;display:flex;gap:8px 24px;align-items:center;flex-wrap:wrap;background:#f6f3eb}.service-intro p{font-size:20px;font-weight:650;margin:0;letter-spacing:-.025em}.service-intro span{font-size:13px;color:#625b60;flex-basis:70%}.service-intro a{font-size:12px;margin-left:auto}.service-steps{display:flex;flex-wrap:wrap;gap:20px;padding:24px 6%;align-items:center;border-bottom:1px solid #d9d5ce;font-size:11px}.service-steps span{display:flex;gap:12px;color:#86738d}.service-steps b{color:#342e37;font-weight:500}.service-steps a{margin-left:auto;color:#342e37}.service-steps small{flex-basis:100%;color:#746e74;font-size:10px}.theme-hero{background:var(--campaign-bg,#daccbf);color:#29242a;position:relative;overflow:hidden;transition:background .5s}.theme-hero .hero-carousel-track{display:flex;transition:transform .5s cubic-bezier(.22,.61,.36,1);will-change:transform;touch-action:pan-y pinch-zoom;cursor:grab}.theme-hero.is-dragging .hero-carousel-track{cursor:grabbing;user-select:none}.campaign-slide{position:relative;flex:0 0 100%;min-width:0;display:grid;grid-template-columns:1fr 1fr;background:var(--campaign-bg);height:520px;overflow:hidden}.campaign-copy{padding:60px 7vw 80px 6vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;z-index:1}.campaign-copy .eyebrow{font-size:11px;letter-spacing:.15em;margin:0 0 20px;color:#635463}.campaign-copy h1,.campaign-copy h2{font:600 clamp(34px,3.65vw,60px)/1.05 var(--font-sans,Arial,sans-serif);letter-spacing:-.045em;margin:0 0 22px;max-width:540px;text-wrap:balance}.campaign-subtitle{font-size:16px;line-height:1.6;max-width:390px;margin:0 0 25px;color:#574d56}.campaign-cta{display:flex;gap:30px;align-items:center;justify-content:space-between;background:#29242a;color:#fff;padding:16px 20px;font-size:13px;text-decoration:none;border-radius:3px;min-height:48px}.campaign-cta:hover{background:#4b3d50}.campaign-note{font-size:9px;color:#6e636d;margin:17px 0 0}.campaign-image{height:520px;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 9%);-webkit-mask-image:linear-gradient(to right,transparent,#000 9%)}.campaign-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0%;pointer-events:none;user-select:none}.campaign-controls{position:absolute;bottom:17px;left:6%;width:38%;display:flex;gap:16px;align-items:center;color:#29242a;z-index:4}.campaign-counter{font-size:11px;letter-spacing:.12em;min-width:52px;font-variant-numeric:tabular-nums}.campaign-dots{display:flex;gap:0}.campaign-controls button{appearance:none;display:flex;align-items:center;justify-content:center;border:0;padding:0;background:transparent;color:inherit;min-width:44px;height:44px;cursor:pointer;box-shadow:none;border-radius:0}.campaign-controls button:before,.campaign-controls button:after{display:none!important;content:none!important}.campaign-dots button span{width:7px;height:7px;background:currentColor;opacity:.35;border-radius:20px;transition:width .2s}.campaign-dots button.is-active span{width:24px;opacity:1}.campaign-arrows{display:flex;align-items:center;margin-left:auto;gap:2px}.campaign-arrows button{width:42px}.campaign-arrows svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.campaign-controls button:hover{background:#0000000a;border-radius:50%}.campaign-controls button:focus-visible,.campaign-cta:focus-visible{outline:2px solid currentColor;outline-offset:3px}.campaign-loading,.campaign-error{min-height:520px;padding:60px 6%;display:grid;align-content:center}.theme-intro{padding:60px 6% 35px}.theme-intro h1{font-size:clamp(32px,5vw,64px);letter-spacing:-.04em;margin:12px 0}.theme-intro p{max-width:640px;line-height:1.7}.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0 6% 60px}.theme-tile{color:inherit;text-decoration:none}.theme-tile img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px}.theme-tile h2{font-size:25px;letter-spacing:-.03em}.theme-tile p{font-size:14px;line-height:1.6}.theme-detail{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--campaign-bg)}.theme-detail img{width:100%;max-height:560px;object-fit:cover}.theme-detail>div{padding:45px 12%}.theme-detail h1{font-size:clamp(34px,4vw,58px);line-height:1.05;letter-spacing:-.04em}.theme-detail p{line-height:1.7}.theme-body{white-space:pre-line}.theme-products{padding:40px 6% 70px}.theme-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.theme-products-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#eee9e3}.theme-product{color:inherit;text-decoration:none}.theme-product small{display:block;margin-top:13px;color:#716672}.theme-product h3{font-size:14px;line-height:1.5;font-weight:500}.theme-products-grid .product-price{font-size:13px}.theme-empty{padding:60px 6%}.theme-editor-language{border:1px solid #ddd;padding:20px;border-radius:8px;margin:16px 0}.theme-picker-list{max-height:340px;overflow:auto;display:grid;gap:8px}.theme-picker-item{display:flex;gap:12px;align-items:center;padding:9px;border:1px solid #ddd;border-radius:6px}.theme-picker-item img{width:44px;height:55px;object-fit:cover}.theme-picker-item span{flex:1;font-size:12px}.theme-picker-item button{min-width:36px;min-height:36px}.theme-selection{display:grid;gap:8px}.theme-admin-preview{max-width:220px;border-radius:5px}
@media(min-width:701px) and (max-width:1100px){.campaign-copy{padding-right:25px}.campaign-controls{width:40%;gap:4px}.mall-main-nav{gap:16px!important}.language-picker{margin-left:6px}}
@media(max-width:700px){.language-picker:not(.language-mobile){display:none}.language-mobile{display:flex;margin:0 8px 0 auto;grid-column:auto}.language-mobile select{max-width:92px;font-size:11px;padding:0}.language-mobile>span{display:none}.mall-header{flex-wrap:wrap}.mall-utilities{margin-left:0!important}.service-intro{padding:18px 6%;gap:7px}.service-intro p{font-size:16px;line-height:1.4;max-width:340px}.service-intro span{font-size:11px;line-height:1.5;flex-basis:100%}.service-intro a{display:none}.campaign-slide{display:flex;flex-direction:column;height:610px;min-height:0}.campaign-copy{flex:0 0 240px;box-sizing:border-box;padding:26px 7% 10px;justify-content:flex-start}.campaign-copy .eyebrow{font-size:9px;margin:0 0 11px}.campaign-copy h1,.campaign-copy h2{font-size:34px;line-height:1.1;margin:0 0 12px;max-width:100%;letter-spacing:-.04em}.campaign-subtitle{font-size:13px;line-height:1.5;margin:0 0 15px;max-width:100%}.campaign-cta{font-size:12px;min-height:42px;padding:11px 15px;gap:20px}.campaign-note{display:none}.campaign-image{flex:1;min-height:0;height:auto;mask-image:linear-gradient(to bottom,transparent,#000 1%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 1%);padding-bottom:58px}.campaign-image img{height:100%;object-position:50% 0%}.campaign-controls{left:7%;right:7%;width:auto;bottom:8px;gap:14px}.campaign-arrows button{width:44px}.campaign-loading,.campaign-error{min-height:610px}.service-steps{gap:13px;padding:22px 6%}.service-steps span{flex-basis:100%;font-size:12px}.service-steps a{margin:0}.service-steps small{font-size:10px;line-height:1.5}.theme-intro{padding:32px 6% 20px}.theme-grid{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.theme-tile h2{font-size:25px;margin:15px 0 8px}.theme-detail{grid-template-columns:1fr}.theme-detail>div{padding:30px 7%}.theme-detail img{max-height:390px;object-position:center 25%}.theme-products{padding:30px 6%}.theme-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.theme-product h3{font-size:12px}.theme-product small{font-size:10px}html[lang="ja"] .campaign-copy h1,html[lang="ja"] .campaign-copy h2{font-size:31px}html[lang="es"] .campaign-copy h1,html[lang="es"] .campaign-copy h2{font-size:32px}}
html[lang="ja"] .campaign-copy h1,html[lang="ja"] .campaign-copy h2{word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:370px){.campaign-counter{display:none}.campaign-controls{gap:4px}html[lang="ja"] .campaign-copy h1,html[lang="ja"] .campaign-copy h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.theme-hero .hero-carousel-track,.theme-hero,.campaign-dots button span{transition:none}}

/* Theme pages own their image geometry; home.css has a global img height:100%. */
#themeRoot{min-width:0}
.theme-intro,.theme-grid,.theme-products{width:100%;max-width:1200px;margin-inline:auto;box-sizing:border-box}
.theme-intro{padding:40px 24px 24px}
.theme-grid{padding:0 24px 48px;align-items:start}
.theme-tile{display:block;min-width:0}
.theme-tile img{height:auto;aspect-ratio:4/3;object-position:50% 15%}
.theme-tile h2{font-size:24px;margin:16px 0 8px;line-height:1.2}
.theme-detail{grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:48px;padding:32px max(24px,calc((100% - 1152px)/2));align-items:center}
.theme-detail>div{min-width:0;padding:0}
.theme-detail h1{font-size:clamp(28px,3vw,40px);line-height:1.12;margin:16px 0 12px}
.theme-detail p{font-size:14px;line-height:1.65;margin:8px 0}
.theme-detail small{display:block;margin-top:14px;font-size:10px}
.theme-detail>img{width:100%;height:auto;aspect-ratio:1;max-height:none;object-fit:contain;border-radius:4px}
.theme-products{padding:36px 24px 64px}
.theme-products>h2{font-size:24px;line-height:1.3;margin:0 0 8px}
.theme-products>p{font-size:12px;line-height:1.6;color:#716672;margin:0 0 24px}
.theme-products-grid{gap:32px 24px;align-items:start}
.theme-product{display:block;min-width:0;overflow-wrap:anywhere}
.theme-product-image{display:block;position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:#f0efed;border-radius:4px}
.theme-product-image img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
.theme-product small{font-size:11px;margin:12px 0 5px}
.theme-product h3{font-size:13px;line-height:1.5;margin:0;min-height:3em;font-weight:500}
.theme-product .product-price{font-size:13px;margin:7px 0 0}
@media(min-width:701px) and (max-width:1000px){.theme-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-detail{grid-template-columns:minmax(0,1fr) minmax(0,280px);gap:28px}}
@media(max-width:700px){
 .theme-intro{padding:28px 20px 20px}.theme-grid{padding:0 20px 36px;gap:28px}
 .theme-detail{grid-template-columns:minmax(0,1fr);gap:20px;padding:26px 20px}
 .theme-detail>div{padding:0}.theme-detail h1{font-size:30px}
 .theme-detail>img{width:min(100%,300px);height:auto;max-height:none;justify-self:center;object-position:center}
 .theme-products{padding:28px 16px 40px}.theme-products>h2{font-size:22px}
 .theme-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 12px}
 .theme-product h3{font-size:12px}.theme-product small{font-size:10px}
}

.theme-browse-links{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.theme-browse-links a{border:1px solid currentColor;padding:9px 13px;border-radius:4px;font-size:13px;text-decoration:none}

.theme-filters{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0 28px}.theme-filters label{display:grid;gap:7px;font-size:12px;flex:1;min-width:160px}.theme-filters select{width:100%;min-height:44px;font:inherit;border:1px solid #ddd7d2;background:#fff;padding:10px;border-radius:4px}.theme-featured{padding-bottom:12px}.theme-featured .theme-products-grid[data-loaded] + .product-paging{display:none}@media(max-width:700px){.theme-filters{gap:10px}.theme-filters label{min-width:120px}}
