:root{--paper: #fbf7f1;--rice: #f3ece1;--rice-2: #ebe1d2;--ink: #1d1916;--ink-2: #4f4640;--ink-3: #675c54;--tray: #1d1916;--tray-2: #2a2420;--tray-3: #3a322c;--red: #b71c2b;--red-deep: #8f1420;--red-seal: #d8283f;--shrimp: #f08a6c;--line: rgba(29,25,22,0.14);--line-strong: rgba(29,25,22,0.28);--line-paper: rgba(251,247,241,0.16);--font-sans: "Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","BIZ UDPGothic","Yu Gothic",YuGothic,Meiryo,sans-serif;--font-serif: "Shippori Mincho B1","Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;--font-latin: "Shippori Mincho B1",Georgia,serif;--radius-l: 22px;--radius-m: 14px;--radius-s: 6px;--gutter: clamp(16px,4vw,40px);--max: 1200px;--header-h: 72px;--ease: cubic-bezier(0.22,0.61,0.36,1)}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 16px)}body{margin: 0;background: var(--paper);color: var(--ink);font-family: var(--font-sans);font-size: 16px;line-height: 1.9;letter-spacing: 0.04em;font-feature-settings: "palt" 1;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}img{max-width: 100%;height: auto;display: block}figure{margin: 0}a{color: inherit}p{margin: 0 0 1em}p:last-child{margin-bottom: 0}ul,ol{margin: 0;padding: 0}h1,h2,h3,h4{margin: 0;font-weight: 800;line-height: 1.4;letter-spacing: 0.06em}h1,h2,h3,h4,summary,.targets li,.lead{word-break: auto-phrase;text-wrap: pretty}:focus-visible{outline: 3px solid var(--red-seal);outline-offset: 3px;border-radius: 4px}.wrap{width: 100%;max-width: calc(var(--max) + var(--gutter) * 2);margin-inline: auto;padding-inline: var(--gutter)}.visually-hidden{position: absolute !important;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap}.skip-link{position: absolute;left: 12px;top: -60px;z-index: 100;padding: 10px 16px;background: var(--ink);color: var(--paper);text-decoration: none;border-radius: var(--radius-s)}.skip-link:focus{top: 12px}.serif{font-family: var(--font-serif)}.nowrap{white-space: nowrap}.note{font-size: 13px;line-height: 1.8;color: var(--ink-3)}.btn{--btn-bg: var(--ink);--btn-fg: var(--paper);display: inline-flex;align-items: center;justify-content: center;gap: 14px;min-height: 56px;padding: 0 28px;border: 1.5px solid var(--btn-bg);border-radius: 999px;background: var(--btn-bg);color: var(--btn-fg);font-size: 15px;font-weight: 700;letter-spacing: 0.08em;text-decoration: none;line-height: 1.3;transition: background-color .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease)}.btn::after{content: "";width: 18px;height: 10px;flex: none;background: currentColor;-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpath d='M0 5h16M12 1l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") center / contain no-repeat;mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpath d='M0 5h16M12 1l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") center / contain no-repeat;transition: transform .25s var(--ease)}.btn:hover::after{transform: translateX(4px)}.btn--red{--btn-bg: var(--red);--btn-fg: #fff}.btn--red:hover{--btn-bg: var(--red-deep)}.btn--ghost{background: transparent;color: var(--ink)}.btn--ghost:hover{background: var(--ink);color: var(--paper)}.btn--paper{--btn-bg: var(--paper);--btn-fg: var(--red-deep)}.btn--paper:hover{--btn-bg: #fff}.btn--ghost-paper{--btn-bg: transparent;--btn-fg: var(--paper);border-color: rgba(251,247,241,.6)}.btn--ghost-paper:hover{--btn-bg: var(--paper);--btn-fg: var(--ink);border-color: var(--paper)}.btn--sm{min-height: 44px;padding: 0 20px;font-size: 14px}.btn--sm::after{display: none}.btn-row{display: flex;flex-wrap: wrap;gap: 12px}.text-link{display: inline-flex;align-items: center;gap: 10px;font-weight: 700;text-decoration: none;border-bottom: 1.5px solid currentColor;padding-bottom: 2px}.text-link:hover{color: var(--red)}.site-header{position: sticky;top: 0;z-index: 50;background: rgba(251,247,241,0.92);-webkit-backdrop-filter: saturate(1.4) blur(12px);backdrop-filter: saturate(1.4) blur(12px);border-bottom: 1px solid transparent;transition: border-color .3s var(--ease)}.site-header.is-scrolled{border-bottom-color: var(--line)}.site-header__inner{display: flex;align-items: center;gap: 24px;height: var(--header-h)}.brand{display: flex;align-items: center;gap: 14px;text-decoration: none;margin-right: auto}.brand__logo{width: 132px;height: auto}.brand__label{padding-left: 14px;border-left: 1px solid var(--line-strong);font-size: 12px;font-weight: 700;letter-spacing: 0.12em;color: var(--ink-2);line-height: 1.4}.global-nav{display: flex;align-items: center;gap: 28px}.global-nav__list{display: flex;gap: 26px;list-style: none}.global-nav__list a{position: relative;font-size: 14px;font-weight: 700;text-decoration: none;padding: 6px 0}.global-nav__list a::after{content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 2px;background: var(--red);transform: scaleX(0);transform-origin: left;transition: transform .3s var(--ease)}.global-nav__list a:hover::after,.global-nav__list a[aria-current="page"]::after{transform: scaleX(1)}.menu-toggle{display: none}@media (max-width: 960px){:root{--header-h: 64px}.brand__logo{width: 112px}.brand__label{font-size: 11px;padding-left: 10px;white-space: nowrap}.menu-toggle{display: inline-flex;align-items: center;gap: 10px;height: 44px;padding: 0 14px;border: 1px solid var(--line-strong);border-radius: 999px;background: transparent;color: var(--ink);font: inherit;font-size: 13px;font-weight: 700;white-space: nowrap;cursor: pointer}.menu-toggle__bars,.menu-toggle__bars::before,.menu-toggle__bars::after{display: block;width: 16px;height: 1.5px;background: currentColor;transition: transform .3s var(--ease),opacity .2s}.menu-toggle__bars{position: relative}.menu-toggle__bars::before,.menu-toggle__bars::after{content: "";position: absolute;left: 0}.menu-toggle__bars::before{top: -5px}.menu-toggle__bars::after{top: 5px}.menu-toggle[aria-expanded="true"] .menu-toggle__bars{background: transparent}.menu-toggle[aria-expanded="true"] .menu-toggle__bars::before{transform: translateY(5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle__bars::after{transform: translateY(-5px) rotate(-45deg)}.global-nav{position: fixed;inset: var(--header-h) 0 auto 0;flex-direction: column;align-items: stretch;gap: 20px;padding: 20px var(--gutter) 28px;background: var(--paper);border-bottom: 1px solid var(--line);box-shadow: 0 24px 40px -24px rgba(29,25,22,.25);visibility: hidden;opacity: 0;transform: translateY(-8px);transition: opacity .25s var(--ease),transform .25s var(--ease),visibility 0s .25s}.global-nav.is-open{visibility: visible;opacity: 1;transform: none;transition: opacity .25s var(--ease),transform .25s var(--ease)}.global-nav__list{flex-direction: column;gap: 0}.global-nav__list a{display: block;padding: 14px 0;font-size: 16px;border-bottom: 1px solid var(--line)}.global-nav__list a::after{display: none}.global-nav__list a[aria-current="page"]{color: var(--red)}.global-nav__cta{min-height: 52px}}.no-js .global-nav{position: static;visibility: visible;opacity: 1;transform: none}.breadcrumb ol{display: flex;flex-wrap: wrap;gap: 4px 0;list-style: none;padding-top: 18px;font-size: 12px;color: var(--ink-3)}.breadcrumb li + li::before{content: "/";margin: 0 10px;color: var(--line-strong)}.breadcrumb a{text-decoration: none}.breadcrumb a:hover{color: var(--red);text-decoration: underline}.section{padding-block: clamp(80px,10vw,140px)}.section--rice{background: var(--rice)}.section--tray{background: var(--tray);color: var(--paper)}.section--tight{padding-block: clamp(56px,7vw,96px)}.eyebrow{display: inline-flex;align-items: center;gap: 12px;margin-bottom: 18px;font-size: 12px;font-weight: 700;letter-spacing: 0.2em;color: var(--red)}.eyebrow::before{content: "";width: 28px;height: 1.5px;background: currentColor}.section--tray .eyebrow{color: var(--shrimp)}.section-head{max-width: 760px;margin-bottom: clamp(40px,6vw,72px)}.section-head--center{margin-inline: auto;text-align: center}.section-head--center .eyebrow{justify-content: center}.section-head h2,.h2{font-family: var(--font-serif);font-size: clamp(28px,4.2vw,46px);line-height: 1.45;letter-spacing: 0.08em}.section-head .lead{margin-top: 24px;color: var(--ink-2);font-size: clamp(15px,1.6vw,17px)}.section--tray .section-head .lead{color: rgba(251,247,241,.78)}.split{display: grid;grid-template-columns: minmax(0,5fr) minmax(0,7fr);gap: clamp(32px,6vw,96px);align-items: start}.split--even{grid-template-columns: minmax(0,1fr) minmax(0,1fr);align-items: center}@media (max-width: 860px){.split,.split--even{grid-template-columns: 1fr}}.hero{position: relative;padding-top: clamp(28px,5vw,64px);padding-bottom: clamp(64px,8vw,112px);overflow: hidden}.hero::before{content: "";position: absolute;inset: -20% -10% auto auto;width: 70vw;height: 70vw;background: radial-gradient(closest-side,rgba(240,138,108,.09),transparent 75%);pointer-events: none}.hero__grid{position: relative;display: grid;grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);gap: clamp(32px,4.5vw,72px);align-items: center}.hero__kicker{display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 28px;list-style: none}.hero__kicker li{padding: 4px 12px;border: 1px solid var(--line-strong);border-radius: 999px;font-size: 12px;font-weight: 700;letter-spacing: 0.1em;color: var(--ink-2);background: rgba(255,255,255,.5)}.hero__title{font-family: var(--font-serif);font-size: clamp(34px,4.3vw,62px);line-height: 1.36;letter-spacing: 0.06em;font-weight: 800}.hero__title em{font-style: normal;color: var(--red)}.hero__sub{margin-top: clamp(20px,3vw,32px);font-size: clamp(15px,1.5vw,17px);color: var(--ink-2);line-height: 2}.hero__actions{margin-top: clamp(28px,4vw,44px)}.tray{display: grid;grid-template-columns: minmax(0,1.5fr) minmax(0,1fr);grid-template-rows: repeat(3,auto);gap: 8px;padding: 8px;background: var(--tray);border-radius: var(--radius-l);box-shadow: 0 40px 80px -40px rgba(29,25,22,.55),inset 0 0 0 1px rgba(255,255,255,.04)}.tray__cell{position: relative;border-radius: var(--radius-m);background: var(--tray-2);color: var(--paper);padding: clamp(14px,1.8vw,22px);overflow: hidden;box-shadow: inset 0 1px 0 rgba(255,255,255,.05)}.tray__cell--photo{grid-row: 1 / span 3;padding: 0;min-height: 100%;background: #000}.tray__cell--photo img{width: 100%;height: 100%;object-fit: cover;object-position: 45% 60%}.tray__cell--photo figcaption{position: absolute;left: 12px;bottom: 12px;padding: 4px 10px;background: rgba(29,25,22,.72);border-radius: 999px;font-size: 11px;letter-spacing: .08em}.tray__cell--red{background: var(--red)}.tray__label{display: block;font-size: 11px;font-weight: 700;letter-spacing: .14em;color: rgba(251,247,241,.7);margin-bottom: 6px}.tray__value{display: block;font-family: var(--font-serif);font-size: clamp(22px,2.3vw,32px);font-weight: 800;line-height: 1.25;letter-spacing: .04em}.tray__value small{font-size: .5em;margin-left: 2px;letter-spacing: .1em}.tray__desc{display: block;margin-top: 6px;font-size: 12px;line-height: 1.6;color: rgba(251,247,241,.78)}@media (max-width: 960px){.hero::before{display: none}.hero__grid{grid-template-columns: 1fr}.hero__title{font-size: clamp(30px,8.6vw,56px)}}@media (max-width: 400px){.brand{gap: 10px}.brand__logo{width: 100px}.menu-toggle__text{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0)}.menu-toggle{padding: 0 13px}}@media (max-width: 560px){.tray{grid-template-columns: 1fr 1fr}.tray__cell--photo{grid-row: auto;grid-column: 1 / -1;aspect-ratio: 4 / 3}.tray__cell:last-child{grid-column: 1 / -1}.hero__actions .btn{width: 100%}}.points{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0;list-style: none;border-top: 1px solid var(--line-strong)}.points>li{padding: clamp(28px,3.5vw,44px) clamp(20px,2.6vw,36px) 8px 0}.points>li + li{padding-left: clamp(20px,2.6vw,36px);border-left: 1px solid var(--line)}.points__num{display: block;font-family: var(--font-latin);font-size: 15px;font-weight: 600;color: var(--red);letter-spacing: .1em;margin-bottom: 18px}.points h3{font-family: var(--font-serif);font-size: clamp(20px,2vw,25px);margin-bottom: 16px}.points p{color: var(--ink-2);font-size: 15px}@media (max-width: 860px){.points{grid-template-columns: 1fr}.points>li{padding: 28px 0}.points>li + li{padding-left: 0;border-left: 0;border-top: 1px solid var(--line)}}.record{display: grid;grid-template-columns: minmax(0,1.2fr) minmax(0,1fr);gap: clamp(32px,6vw,96px);align-items: end}.record__figure{font-family: var(--font-serif);font-weight: 800;line-height: 1;letter-spacing: .02em}.record__pre{display: block;font-size: clamp(16px,1.8vw,20px);letter-spacing: .14em;margin-bottom: 18px;color: rgba(251,247,241,.82)}.record__num{display: inline-block;font-size: clamp(76px,11vw,168px);color: var(--paper);font-variant-numeric: tabular-nums}.record__line{display: block;white-space: nowrap}.record__unit{font-size: clamp(26px,3.4vw,44px);color: var(--shrimp);margin-left: .2em}.record__body p{color: rgba(251,247,241,.82)}.record__body .note{color: rgba(251,247,241,.62);margin-top: 20px}.record__body .text-link{color: var(--paper);margin-top: 28px}.record__body .text-link:hover{color: var(--shrimp)}@media (max-width: 860px){.record{grid-template-columns: 1fr;align-items: start}}.compartments{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 8px;padding: 8px;list-style: none;background: var(--rice-2);border-radius: var(--radius-l)}.compartments--2{grid-template-columns: repeat(2,minmax(0,1fr))}.compartments>li,.compartments>div{background: var(--paper);border-radius: var(--radius-m);padding: clamp(20px,2.4vw,32px)}.compartments h3{font-size: 17px;letter-spacing: .06em;margin-bottom: 10px;line-height: 1.6}.compartments p{font-size: 14px;color: var(--ink-2);line-height: 1.85}.compartments .icon{display: block;width: 36px;height: 36px;margin-bottom: 16px;color: var(--red)}@media (max-width: 860px){.compartments,.compartments--2{grid-template-columns: 1fr 1fr}}@media (max-width: 560px){.compartments,.compartments--2{grid-template-columns: 1fr}}.showcase__media{position: relative;padding: 8px;background: var(--tray);border-radius: var(--radius-l)}.showcase__media img{width: 100%;border-radius: var(--radius-m);aspect-ratio: 4 / 3;object-fit: cover}.showcase__media figcaption{padding: 10px 8px 4px;font-size: 12px;color: rgba(251,247,241,.72);letter-spacing: .06em}.showcase__body h2,.showcase__body h3{margin-bottom: 24px}.flow{display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: 0;list-style: none;counter-reset: step}.flow>li{position: relative;padding: 0 clamp(10px,1.6vw,20px) 0 0;counter-increment: step}.flow__dot{position: relative;display: flex;align-items: center;margin-bottom: 22px}.flow__dot::before{content: counter(step,decimal-leading-zero);display: grid;place-items: center;width: 52px;height: 52px;border-radius: 50%;background: var(--paper);border: 1.5px solid var(--ink);font-family: var(--font-latin);font-weight: 600;font-size: 15px;position: relative;z-index: 1}.flow>li:first-child .flow__dot::before{background: var(--red);border-color: var(--red);color: #fff}.flow__dot::after{content: "";position: absolute;left: 52px;right: 0;top: 50%;height: 1.5px;background: repeating-linear-gradient(90deg,var(--line-strong) 0 6px,transparent 6px 12px)}.flow>li:last-child .flow__dot::after{display: none}.flow h3{font-size: 17px;margin-bottom: 10px}.flow p{font-size: 14px;color: var(--ink-2);line-height: 1.85}@media (max-width: 860px){.flow{grid-template-columns: 1fr;gap: 0}.flow>li{display: grid;grid-template-columns: 52px 1fr;column-gap: 20px;padding: 0 0 28px}.flow__dot{grid-row: 1 / span 2;align-self: stretch;align-items: flex-start;margin: 0;flex-direction: column}.flow__dot::after{left: 25px;right: auto;top: 52px;bottom: -28px;width: 1.5px;height: auto;background: repeating-linear-gradient(180deg,var(--line-strong) 0 6px,transparent 6px 12px)}.flow h3{padding-top: 12px}}.targets{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0 32px;list-style: none;border-top: 1px solid var(--line-strong)}.targets li{display: flex;gap: 14px;align-items: flex-start;padding: 18px 0;border-bottom: 1px solid var(--line);font-weight: 700;line-height: 1.7}.targets li::before{content: "";flex: none;width: 20px;height: 20px;margin-top: 4px;border-radius: 50%;background: var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") center / 100% no-repeat}@media (max-width: 640px){.targets{grid-template-columns: 1fr}}.faq{border-top: 1px solid var(--line-strong)}.faq details{border-bottom: 1px solid var(--line)}.faq summary{position: relative;display: flex;gap: 16px;padding: 24px 48px 24px 0;font-weight: 700;font-size: 16px;line-height: 1.7;cursor: pointer;list-style: none}.faq summary::-webkit-details-marker{display: none}.faq summary::before{content: "Q";flex: none;font-family: var(--font-latin);font-size: 20px;line-height: 1.35;color: var(--red)}.faq summary::after{content: "";position: absolute;right: 6px;top: 50%;width: 14px;height: 14px;margin-top: -7px;background: linear-gradient(currentColor,currentColor) center / 14px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center / 1.5px 14px no-repeat;transition: transform .3s var(--ease)}.faq details[open] summary::after{transform: rotate(45deg)}.faq summary:hover{color: var(--red)}.faq__a{display: flex;gap: 16px;padding: 0 48px 26px 0;color: var(--ink-2);font-size: 15px}.faq__a::before{content: "A";flex: none;font-family: var(--font-latin);font-size: 20px;line-height: 1.35;color: var(--ink-3)}.cta-band{position: relative;overflow: hidden;background: var(--red);color: #fff;padding-block: clamp(72px,9vw,128px)}.cta-band::before,.cta-band::after{content: "";position: absolute;top: 50%;right: -80px;width: 420px;height: 320px;translate: 0 -50%;border: 1.5px solid rgba(255,255,255,.16);border-radius: 28px;pointer-events: none}.cta-band::after{width: 420px;border: 0;border-radius: 0;background: linear-gradient(90deg,transparent 54%,rgba(255,255,255,.16) 54% calc(54% + 1.5px),transparent calc(54% + 1.5px)) 0 0 / 100% 100% no-repeat,linear-gradient(180deg,transparent 50%,rgba(255,255,255,.16) 50% calc(50% + 1.5px),transparent calc(50% + 1.5px)) 100% 0 / 46% 100% no-repeat}@media (max-width: 1100px){.cta-band::before,.cta-band::after{display: none}}.cta-band__inner{position: relative}.cta-band .eyebrow{color: rgba(255,255,255,.85)}.cta-band h2{font-family: var(--font-serif);font-size: clamp(28px,4.4vw,52px);line-height: 1.45;letter-spacing: .08em;max-width: 16em}.cta-band p{margin-top: 20px;max-width: 40em;color: rgba(255,255,255,.88)}.cta-band .btn-row{margin-top: 36px}@media (max-width: 560px){.cta-band .btn{width: 100%}}.page-hero{position: relative;padding-block: clamp(36px,6vw,80px) clamp(48px,7vw,96px);border-bottom: 1px solid var(--line);overflow: hidden}.page-hero__grid{display: grid;grid-template-columns: minmax(0,1.4fr) minmax(0,1fr);gap: clamp(28px,5vw,72px);align-items: end}.page-hero h1{font-family: var(--font-serif);font-size: clamp(32px,5vw,60px);line-height: 1.35;letter-spacing: .08em}.page-hero .lead{color: var(--ink-2);font-size: clamp(15px,1.5vw,17px)}.page-hero__mini-tray{display: grid;grid-template-columns: 1.4fr 1fr;grid-template-rows: 1fr 1fr;gap: 6px;padding: 6px;width: min(100%,300px);aspect-ratio: 4 / 3;justify-self: end;background: var(--tray);border-radius: 18px}.page-hero__mini-tray span{border-radius: 10px;background: var(--tray-2)}.page-hero__mini-tray span:first-child{grid-row: span 2;background: var(--rice)}.page-hero__mini-tray span:nth-child(2){background: var(--red)}@media (max-width: 860px){.page-hero__grid{grid-template-columns: 1fr}.page-hero__mini-tray{display: none}}.block + .block{margin-top: clamp(56px,8vw,104px)}.block-head{display: grid;grid-template-columns: minmax(0,4fr) minmax(0,8fr);gap: clamp(20px,5vw,72px)}.block-head h2{font-family: var(--font-serif);font-size: clamp(24px,3vw,34px);line-height: 1.5;letter-spacing: .08em}.block-head .eyebrow{margin-bottom: 14px}@media (max-width: 860px){.block-head{grid-template-columns: 1fr}}.prose{color: var(--ink-2)}.prose strong{color: var(--ink)}.prose>* + *{margin-top: 1.1em}.notice{padding: 18px 22px;border-left: 3px solid var(--red);background: var(--rice);border-radius: 0 var(--radius-s) var(--radius-s) 0;font-size: 14px;color: var(--ink-2)}.dl{border-top: 1px solid var(--line-strong)}.dl>div{display: grid;grid-template-columns: minmax(120px,1fr) minmax(0,3fr);gap: 8px 32px;padding: 20px 0;border-bottom: 1px solid var(--line)}.dl dt{font-weight: 700}.dl dd{margin: 0;color: var(--ink-2)}@media (max-width: 560px){.dl>div{grid-template-columns: 1fr;gap: 4px}}.check-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 8px;list-style: none}.check-grid li{padding: 18px 20px;background: var(--paper);border: 1px solid var(--line);border-radius: var(--radius-m)}.check-grid b{display: block;margin-bottom: 4px}.check-grid span{font-size: 14px;color: var(--ink-2)}@media (max-width: 640px){.check-grid{grid-template-columns: 1fr}}.diagram{display: grid;grid-template-columns: minmax(0,1fr) 48px minmax(0,1.2fr);align-items: center;gap: 12px}.diagram__node{padding: 22px;border-radius: var(--radius-m);background: var(--tray);color: var(--paper)}.diagram__node b{display: block;font-family: var(--font-serif);font-size: 20px;letter-spacing: .06em}.diagram__node span{font-size: 13px;color: rgba(251,247,241,.75)}.diagram__arrow{height: 2px;background: var(--red);position: relative}.diagram__arrow::after{content: "";position: absolute;right: -1px;top: -5px;border: 6px solid transparent;border-left: 9px solid var(--red);border-right: 0}.diagram__out{display: grid;gap: 8px}.diagram__out .diagram__node{background: var(--paper);color: var(--ink);border: 1.5px solid var(--ink)}.diagram__out .diagram__node span{color: var(--ink-2)}.diagram__out .diagram__node--red{background: var(--red);color: #fff;border-color: var(--red)}.diagram__out .diagram__node--red span{color: rgba(255,255,255,.85)}@media (max-width: 640px){.diagram{grid-template-columns: 1fr}.diagram__arrow{width: 2px;height: 32px;justify-self: center}.diagram__arrow::after{right: -5px;top: auto;bottom: -2px;border: 6px solid transparent;border-top: 9px solid var(--red);border-bottom: 0}}.form-layout{display: grid;grid-template-columns: minmax(0,7fr) minmax(0,4fr);gap: clamp(32px,5vw,72px);align-items: start}.form-aside{position: sticky;top: calc(var(--header-h) + 24px)}@media (max-width: 960px){.form-layout{grid-template-columns: 1fr}.form-aside{position: static}}.form{padding: clamp(24px,4vw,48px);background: #fff;border: 1px solid var(--line);border-radius: var(--radius-l)}.form fieldset{border: 0;margin: 0;padding: 0}.form legend{font-family: var(--font-serif);font-size: 20px;font-weight: 800;letter-spacing: .06em;margin-bottom: 8px}.form fieldset + fieldset{margin-top: 48px}.form legend{float: left;width: 100%;padding-bottom: 12px;border-bottom: 1px solid var(--line)}.form legend + *{clear: both}.field{margin-top: 22px}.field-row{display: grid;grid-template-columns: 1fr 1fr;gap: 0 20px}@media (max-width: 640px){.field-row{grid-template-columns: 1fr}}.field label,.field .label{display: flex;align-items: center;gap: 10px;margin-bottom: 8px;font-weight: 700;font-size: 15px}.badge{display: inline-block;padding: 1px 8px;border-radius: 4px;font-size: 11px;font-weight: 700;letter-spacing: .08em;line-height: 1.8;background: var(--rice-2);color: var(--ink-2)}.badge--req{background: var(--red);color: #fff}.field input[type="text"],.field input[type="email"],.field input[type="tel"],.field select,.field textarea{width: 100%;min-height: 52px;padding: 12px 16px;border: 1.5px solid var(--line-strong);border-radius: 10px;background: var(--paper);color: var(--ink);font: inherit;font-size: 16px;letter-spacing: .02em;transition: border-color .2s,background-color .2s,box-shadow .2s}.field textarea{min-height: 180px;resize: vertical;line-height: 1.8}.field select{appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231d1916' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 16px center;background-size: 12px;padding-right: 44px}.field input:focus,.field select:focus,.field textarea:focus{outline: none;border-color: var(--red);background: #fff;box-shadow: 0 0 0 4px rgba(183,28,43,.14)}.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color: var(--red);background: #fff6f6}.field .hint{margin-top: 6px;font-size: 13px;color: var(--ink-3);line-height: 1.7}.radio-list{display: grid;gap: 8px}.radio-list label{display: flex;gap: 12px;align-items: flex-start;margin: 0;padding: 14px 16px;border: 1.5px solid var(--line);border-radius: 10px;background: var(--paper);font-weight: 500;cursor: pointer;transition: border-color .2s,background-color .2s}.radio-list label:hover{border-color: var(--line-strong)}.radio-list input{accent-color: var(--red);width: 18px;height: 18px;margin-top: 4px;flex: none}.radio-list label:has(input:checked){border-color: var(--red);background: #fff}.consent{display: flex;gap: 12px;align-items: flex-start;margin-top: 32px;font-size: 14px}.consent input{accent-color: var(--red);width: 20px;height: 20px;margin-top: 3px;flex: none}.form .btn{margin-top: 28px;width: 100%;min-height: 64px;font-size: 16px;cursor: pointer}.hp-field{position: absolute !important;left: -9999px !important;width: 1px;height: 1px;overflow: hidden}.form-errors{margin-bottom: 24px;padding: 16px 20px;border-radius: 10px;background: #fff1f1;border: 1px solid rgba(183,28,43,.4);color: var(--red-deep);font-size: 14px}.aside-card{padding: 28px;border-radius: var(--radius-l);background: var(--tray);color: var(--paper)}.aside-card h2{font-family: var(--font-serif);font-size: 20px;margin-bottom: 16px;letter-spacing: .06em}.aside-card ol{list-style: none;counter-reset: a}.aside-card li{counter-increment: a;display: flex;gap: 12px;padding: 12px 0;border-top: 1px solid var(--line-paper);font-size: 14px;line-height: 1.7}.aside-card li::before{content: counter(a);flex: none;display: grid;place-items: center;width: 24px;height: 24px;border-radius: 50%;background: var(--red);font-size: 12px;font-weight: 700}.aside-card .note{color: rgba(251,247,241,.65);margin-top: 16px}.aside-tel{margin-top: 20px;padding: 20px 24px;border: 1px solid var(--line);border-radius: var(--radius-m);font-size: 14px;color: var(--ink-2)}.aside-tel a{font-family: var(--font-latin);font-size: 24px;font-weight: 600;color: var(--ink);text-decoration: none;letter-spacing: .04em}.site-footer{background: var(--tray);color: rgba(251,247,241,.82);padding-top: clamp(56px,7vw,88px);font-size: 14px}.site-footer__grid{display: grid;grid-template-columns: 1.2fr 1fr 1.3fr;gap: 40px}.site-footer__brand img{width: 150px;margin-bottom: 18px}.site-footer ul{list-style: none}.site-footer__nav li + li{margin-top: 10px}.site-footer a{text-decoration: none}.site-footer a:hover{color: #fff;text-decoration: underline}.site-footer__label{font-size: 12px;letter-spacing: .14em;color: var(--shrimp);margin-bottom: 8px}.site-footer strong{color: #fff}.site-footer__links{margin-top: 16px}.site-footer__links li + li{margin-top: 8px}.site-footer__links a::after{content: " ↗";font-size: 12px}.site-footer__copy{margin-top: 56px;padding-block: 24px;background: linear-gradient(var(--line-paper),var(--line-paper)) var(--gutter) 0 / calc(100% - var(--gutter) * 2) 1px no-repeat;color: rgba(251,247,241,.55)}@media (max-width: 860px){.site-footer__grid{grid-template-columns: 1fr;gap: 32px}.site-footer{padding-bottom: 76px}}.sticky-cta{display: none}@media (max-width: 860px){.sticky-cta{display: block;position: fixed;left: 0;right: 0;bottom: 0;z-index: 40;padding: 10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background: rgba(251,247,241,.94);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px);border-top: 1px solid var(--line);transform: translateY(110%);transition: transform .35s var(--ease)}.sticky-cta.is-visible{transform: none}.sticky-cta .btn{width: 100%;min-height: 50px}.page-contact .sticky-cta{display: none}}.js .reveal{opacity: 0;transform: translateY(18px);transition: opacity .8s var(--ease),transform .8s var(--ease);transition-delay: var(--d,0s)}.js .reveal.is-visible{opacity: 1;transform: none}.hero__title .line{display: block;white-space: nowrap}.js .hero__title .line,.js .hero__sub,.js .hero__actions,.js .hero__kicker{animation: rise .9s var(--ease) both}.js .hero__title .line:nth-child(2){animation-delay: .08s}.js .hero__sub{animation-delay: .16s}.js .hero__actions{animation-delay: .24s}.js .tray__cell{animation: rise .9s var(--ease) both}.js .tray__cell:nth-child(2){animation-delay: .12s}.js .tray__cell:nth-child(3){animation-delay: .2s}.js .tray__cell:nth-child(4){animation-delay: .28s}@keyframes rise{from{opacity: 0;transform: translateY(14px)}to{opacity: 1;transform: none}}@supports (animation-timeline: view()){.parallax img{animation: drift linear both;animation-timeline: view();animation-range: cover 0% cover 100%;scale: 1.08}@keyframes drift{from{translate: 0 -3%}to{translate: 0 3%}}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation: none !important;transition: none !important;scroll-behavior: auto !important}.js .reveal{opacity: 1;transform: none}.parallax img{scale: 1;translate: none}}@media print{.site-header,.sticky-cta,.cta-band,.site-footer{display: none}}.compartments.toc{grid-template-columns: repeat(3,minmax(0,1fr))}.compartments.toc>li{padding: 16px 20px;display: flex;align-items: center}.compartments.toc .text-link{font-size: 14px;border-bottom: 0}.compartments.toc .text-link::before{content: "↓";color: var(--red)}@media (max-width: 560px){.compartments.toc{grid-template-columns: 1fr 1fr}}.tray__cell--red .tray__label,.tray__cell--red .tray__desc{color: #fff}.origin{padding-bottom: clamp(64px,8vw,112px)}.origin__head{display: grid;grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);gap: clamp(24px,5vw,80px);align-items: end;margin-bottom: clamp(32px,5vw,56px)}.origin__head .lead{color: var(--ink-2);font-size: clamp(15px,1.5vw,17px)}.dish-strip{display: grid;grid-template-columns: 2fr 1fr 1fr;gap: 8px;padding: 8px;background: var(--tray);border-radius: var(--radius-l)}.dish-strip__item{overflow: hidden;border-radius: var(--radius-m);height: clamp(220px,27vw,400px);background: var(--tray-2)}.dish-strip__item img{width: 100%;height: 100%;object-fit: cover}.dish-strip__note{margin-top: 14px}@media (max-width: 760px){.origin__head{grid-template-columns: 1fr}.dish-strip{grid-template-columns: 1fr 1fr}.dish-strip__item{height: auto;aspect-ratio: 1 / 1}.dish-strip__item--wide{grid-column: 1 / -1;aspect-ratio: 3 / 2}}.gallery{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 8px;padding: 8px;list-style: none;background: var(--tray);border-radius: var(--radius-l)}.gallery figure{margin: 0}.gallery li{overflow: hidden;border-radius: var(--radius-m);background: var(--tray-2)}.gallery img{width: 100%;aspect-ratio: 3 / 2;object-fit: cover}.gallery figcaption{padding: 10px 14px 12px;font-size: 12px;letter-spacing: .06em;color: rgba(251,247,241,.8)}@media (max-width: 760px){.gallery{grid-template-columns: 1fr 1fr}}.product-card{display: grid;grid-template-columns: minmax(0,1.15fr) minmax(0,1fr);gap: clamp(28px,4vw,64px);align-items: center;padding: clamp(16px,2vw,24px);background: #fff;border: 1px solid var(--line);border-radius: var(--radius-l);box-shadow: 0 30px 60px -40px rgba(29,25,22,.35)}.product-card__media{position: relative;overflow: hidden;border-radius: var(--radius-m);background: var(--tray);padding: 6px}.product-card__media img{width: 100%;aspect-ratio: 4 / 3;object-fit: cover;border-radius: 10px}.product-card__badge{position: absolute;left: 18px;top: 18px;padding: 4px 12px;border-radius: 999px;background: var(--red);color: #fff;font-size: 12px;font-weight: 700;letter-spacing: .1em}.product-card__body{padding: clamp(4px,1vw,16px) clamp(4px,1.5vw,24px) clamp(4px,1vw,16px) 0}.product-card h3{font-family: var(--font-serif);font-size: clamp(22px,2.4vw,30px);margin-bottom: 18px}.product-card .tags{display: flex;flex-wrap: wrap;gap: 8px;list-style: none;margin: 18px 0 8px}.product-card .tags li{padding: 3px 12px;border-radius: 999px;background: var(--rice);font-size: 12px;font-weight: 700;color: var(--ink-2)}@media (max-width: 860px){.product-card{grid-template-columns: 1fr}.product-card__body{padding: 0 6px 6px}}.section-cta{margin-top: clamp(36px,5vw,56px)}.record__actions{margin-top: 28px;align-items: center;gap: 20px 28px}.targets__title{margin-bottom: 18px;font-size: 13px;letter-spacing: .16em;color: var(--red)}.js .reveal-media img{clip-path: inset(0 0 100% 0);transform: scale(1.06);transition: clip-path 1s var(--ease),transform 1.4s var(--ease);transition-delay: var(--d,0s)}.js .reveal-media.is-visible img{clip-path: inset(0 0 0 0);transform: none}@media (prefers-reduced-motion: reduce){.js .reveal-media img{clip-path: none;transform: none}}.page-hero--photo .page-hero__grid{align-items: center}.page-hero__photo{justify-self: end;width: min(100%,460px);padding: 8px;background: var(--tray);border-radius: var(--radius-l);box-shadow: 0 40px 80px -48px rgba(29,25,22,.6)}.page-hero__photo img{width: 100%;aspect-ratio: 4 / 3;object-fit: cover;border-radius: var(--radius-m)}.page-hero__photo figcaption{padding: 8px 8px 2px;font-size: 12px;color: rgba(251,247,241,.75);letter-spacing: .06em}@media (max-width: 860px){.page-hero__photo{justify-self: stretch;width: 100%}}.page-top .origin{padding-top: clamp(24px,4vw,56px)}.record__actions .text-link{margin-top: 0}.tray__desc{word-break: auto-phrase}@media (max-width: 420px){.hero__kicker{gap: 6px;margin-bottom: 22px}.hero__kicker li{padding: 3px 9px;font-size: 11px;letter-spacing: .04em}.tray__cell{padding: 14px}.tray__desc{font-size: 11px}}@media (max-width: 560px){.btn-row .btn{width: 100%}.compartments.toc{gap: 6px;padding: 6px}.compartments.toc>li{padding: 10px 12px}.compartments.toc .text-link{font-size: 13px;gap: 6px}}.photo-band{position: relative;isolation: isolate;overflow: hidden;background: var(--tray);color: #fff}.photo-band__media{position: absolute;inset: 0;z-index: -2;margin: 0}.photo-band__media img{width: 100%;height: 100%;object-fit: cover;object-position: var(--pos,62% 45%)}.photo-band::before{content: "";position: absolute;inset: 0;z-index: -1;background: linear-gradient(90deg,rgba(20,16,14,.9) 0%,rgba(20,16,14,.72) 42%,rgba(20,16,14,.38) 100%)}.photo-band__inner{padding-block: clamp(80px,11vw,150px)}.photo-band .eyebrow{color: var(--shrimp)}.photo-band h1,.photo-band h2{font-family: var(--font-serif);font-size: clamp(30px,4.6vw,56px);line-height: 1.42;letter-spacing: .07em;max-width: 15em;text-shadow: 0 2px 24px rgba(0,0,0,.35)}.photo-band .lead,.photo-band p{color: rgba(255,255,255,.9)}.photo-band .lead{margin-top: 22px;max-width: 34em;font-size: clamp(15px,1.5vw,17px)}.photo-band .btn-row{margin-top: 32px}.photo-band .note{color: rgba(255,255,255,.7)}.photo-band__credit{position: absolute;right: 12px;bottom: 10px;padding: 2px 10px;border-radius: 999px;background: rgba(0,0,0,.45);font-size: 11px;letter-spacing: .06em;color: rgba(255,255,255,.85)}.photo-band--short .photo-band__inner{padding-block: clamp(56px,8vw,104px)}@media (max-width: 640px){.photo-band::before{background: linear-gradient(180deg,rgba(20,16,14,.62) 0%,rgba(20,16,14,.86) 55%,rgba(20,16,14,.94) 100%)}.photo-band__inner{padding-top: 220px}.photo-band--short .photo-band__inner{padding-top: 160px}}.hero--photo{color: #fff;padding-top: clamp(40px,6vw,80px)}.hero.photo-band::before{display: block;inset: 0;width: auto;height: auto;background: linear-gradient(90deg,rgba(20,16,14,.9) 0%,rgba(20,16,14,.74) 46%,rgba(20,16,14,.5) 100%)}.hero--photo .hero__kicker li{color: #fff;border-color: rgba(255,255,255,.45);background: rgba(0,0,0,.25)}.hero--photo .hero__title em{color: #ff8f7a}.hero--photo .hero__sub{color: rgba(255,255,255,.9)}.hero--photo .btn--ghost{color: #fff;border-color: rgba(255,255,255,.7)}.hero--photo .btn--ghost:hover{background: #fff;color: var(--ink)}.hero--photo .tray{box-shadow: 0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.08)}@media (max-width: 640px){.hero--photo .photo-band__inner{padding-top: 0}.hero.photo-band::before{background: linear-gradient(180deg,rgba(20,16,14,.78) 0%,rgba(20,16,14,.9) 60%,rgba(20,16,14,.96) 100%)}}.photo-band--soft .photo-band__media img{filter: blur(3px) saturate(1.1);transform: scale(1.08)}
