.catalogue{background:#faf9f5;color:#26382f;--green:#365847;--border:#e0e2d8;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}.catalogue main{max-width:1200px;padding:0 28px}.site-header{position:sticky;top:0;z-index:20;padding:18px max(24px,calc((100vw - 1144px)/2));background:#faf9f5f5;backdrop-filter:blur(10px)}.site-header .brand{font-family:Georgia,serif;letter-spacing:-2px;font-size:36px}.site-header nav{display:flex;gap:25px;font-size:13px}.site-header nav a{text-decoration:none;padding:12px 0}.site-header span,.mobile-list span{border-radius:50%;padding:3px 7px;background:#e9ede4}.hero{padding:45px 0 30px;max-width:1000px;margin-bottom:24px!important}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(30px,4.5vw,52px);letter-spacing:.05em;line-height:1.6;margin:20px 0}.hero>p:not(.eyebrow){font-size:16px}.primary-link{display:inline-flex;gap:45px;align-items:center;background:var(--green);color:#fff;border-radius:4px;padding:17px 25px;text-decoration:none;margin-top:16px}.hero-note{color:#768071;font-size:12px!important}.catalogue section{scroll-margin-top:100px;margin-bottom:64px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:22px}.section-heading h2{font-family:'Yu Mincho',serif;font-size:28px;margin:7px 0}.section-heading>p{font-size:13px;color:#657366}.search-panel{background:#efeee7;padding:23px;border-radius:8px}.search-panel input,.search-panel select{margin-bottom:12px}.filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.search-label input{max-width:100%}.check-label{display:inline-flex;align-items:center;gap:8px;margin-right:20px;font-size:14px}.check-label input{margin:0;min-width:18px;min-height:18px}.text-button{border:0;background:none;color:var(--green);text-decoration:underline;font-size:13px;padding:10px}.fruit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.fruit-card{background:white;border:1px solid var(--border);border-radius:10px;overflow:hidden;position:relative}.fruit-card a{display:block;text-decoration:none;color:inherit}.fruit-card img,.photo-empty{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:0;background:#e9ede3}.photo-empty{display:grid;place-items:center;color:#75816f;font-family:Georgia,serif;font-size:35px}.card-info{padding:20px 20px 8px}.card-info h3{font-size:22px;margin:12px 0 4px}.card-info p{font-size:13px;margin:5px 0}.fruit-card>button{margin:8px 20px 20px;width:calc(100% - 40px)}.badge{font-size:12px;background:#edf1e6;padding:5px 9px;border-radius:4px;display:inline-block}.badge.current{background:#365847;color:white}.badge.ended{background:#eee;color:#687565}.catalogue button{min-height:46px;border-radius:4px}.empty-state{grid-column:1/-1;padding:40px;text-align:center;border:1px dashed #bcc7b7;background:#f2f3ec}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.plan-card{padding:28px;background:#f0f0e7;border-radius:8px}.plan-card h3{font-size:24px;font-weight:500}.plan-card button{background:transparent;color:var(--green)}.list-row{display:grid;grid-template-columns:1fr 130px auto;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--border)}.list-row h3{font-size:17px;margin:0}.list-row input{margin:4px 0;min-width:0}.list-row .unavailable{color:#a3472f}.list-row p{font-size:12px;margin:5px 0}#startQuote{margin-top:25px}#listWarning{color:#a3472f}.mobile-list{display:none}#toast{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);z-index:100;background:#26382f;color:#fff;padding:13px 24px;border-radius:7px;pointer-events:none;max-width:90vw;font-size:14px;opacity:0;transition:opacity .2s}#toast.visible{opacity:1}.catalogue dialog{max-height:90vh;overflow-y:auto;width:min(700px,94vw);padding:30px}.dialog-close{display:block;margin-left:auto;margin-bottom:20px}.detail-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.detail-grid{display:grid;grid-template-columns:110px 1fr;gap:12px;margin:25px 0;font-size:14px}.detail-grid dt{color:#778274}.detail-grid dd{margin:0}.quantity-choice{max-width:160px}.catalogue dialog section{margin:0}.catalogue label span{font-size:11px;background:#e9ede3;padding:2px 5px;margin-left:8px}.catalogue #reviewContent{padding:18px;background:#f2f3ec;border-radius:8px;margin:20px 0}.catalogue #receipt{font-size:23px;letter-spacing:.05em}.catalogue #submitRequest{margin:8px 0;width:100%}.catalogue #requestStatus{color:#a3472f}.catalogue details{font-size:13px}.catalogue summary{padding:12px;cursor:pointer}.catalogue footer{border-top:1px solid var(--border);margin-top:20px}.catalogue input,.catalogue select,.catalogue textarea{font-size:16px}.catalogue .muted{font-size:13px}@media(max-width:800px){.fruit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header nav{gap:16px}.section-heading{display:block}}@media(max-width:520px){.catalogue main{padding:0 18px}.site-header{padding:12px 18px;display:block}.site-header .brand{font-size:31px}.site-header nav{justify-content:space-between;gap:10px;font-size:12px}.site-header nav a{padding:10px 0 0}.hero{padding:35px 0 32px}.hero h1{font-size:30px;letter-spacing:.03em}.hero>p:not(.eyebrow){font-size:14px}.primary-link{width:100%;justify-content:space-between}.catalogue section{scroll-margin-top:120px;margin-bottom:45px}.section-heading h2{font-size:25px}.fruit-grid{gap:13px}.card-info{padding:13px 12px 5px}.card-info h3{font-size:18px}.card-info p{font-size:12px}.fruit-card>button{margin:8px 12px 13px;width:calc(100% - 24px);padding:12px 7px;font-size:12px}.plan-grid{grid-template-columns:1fr}.plan-card{padding:22px}.search-panel{padding:16px}.filter-row{gap:10px}.list-row{grid-template-columns:1fr 95px;gap:12px}.list-row>button{grid-column:2;padding:8px}.mobile-list{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--green);color:white;justify-content:center;gap:15px;align-items:center;padding:14px 20px max(14px,env(safe-area-inset-bottom));z-index:30;text-decoration:none}.mobile-list span{color:var(--green)}.catalogue footer{padding-bottom:100px}#toast{bottom:80px}.catalogue dialog{padding:22px}.detail-grid{grid-template-columns:85px 1fr}}

/* Product-first view: keep the first product and action above the fold. */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-header{padding-top:10px;padding-bottom:10px}.hero{padding:15px 0 12px;margin-bottom:0!important}.hero h1{font-family:inherit;font-size:25px;line-height:1.4;margin:0;letter-spacing:0}.hero>p:not(.eyebrow){font-size:13px;margin:5px 0;color:#657366}
#products .section-heading{display:flex;align-items:center;margin-bottom:12px;gap:12px}#products .section-heading h2{font-family:inherit;font-size:21px;margin:0}#products .section-heading>p{margin:0;font-size:12px}.search-panel{background:transparent;padding:0}.search-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}.search-label input{margin:0;height:46px}.filter-details{position:relative}.filter-details summary{border:1px solid #bec9b8;border-radius:5px;padding:12px 16px;min-height:46px;list-style:none;background:white;font-size:14px}.filter-details summary::after{content:' ▾'}.filter-details[open] summary::after{content:' ▴'}.filter-content{position:absolute;right:0;top:52px;width:min(650px,calc(100vw - 36px));padding:20px;background:#f4f4ee;border:1px solid var(--border);box-shadow:0 12px 24px #26382f20;border-radius:8px;z-index:25}.catalogue-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0}.catalogue-summary .check-label{margin:0;font-size:13px;min-height:24px}.catalogue-summary p{margin:0;font-size:12px}.card-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fruit-card img,.fruit-card .photo-empty{aspect-ratio:3/2;max-height:210px}.card-info{padding:14px 18px 5px}.card-info p{line-height:1.5;margin:3px 0}.fruit-card .card-info h3{margin:8px 0 3px;font-size:23px}.fruit-card>button{font-size:14px;font-weight:600}.fruit-card a:focus-visible{outline-offset:-3px}
@media(max-width:520px){.site-header{display:flex;align-items:center;gap:10px;padding:8px 18px}.site-header .brand{font-size:28px;letter-spacing:-1px}.site-header nav{gap:8px;align-items:center;flex-wrap:nowrap}.site-header nav a{padding:12px 0;font-size:11px;white-space:nowrap}.site-header nav a:first-child{display:inline-flex}.hero{padding:12px 0 10px}.hero h1{font-size:20px;line-height:1.4}.hero>p:not(.eyebrow){font-size:12px;margin:4px 0}.catalogue section{scroll-margin-top:75px}#products .section-heading{margin-bottom:10px}#products .section-heading h2{font-size:19px}#products .section-heading>p{font-size:11px}.fruit-grid{gap:12px}.card-info{padding:10px 12px 3px}.fruit-card .card-info h3{font-size:20px;margin:6px 0 2px}.card-info p{line-height:1.5;margin:3px 0;font-size:12px}.badge{font-size:12px;padding:4px 7px}.fruit-card>button{margin:5px 10px 10px;width:calc(100% - 20px);padding:10px 5px;font-size:13px;line-height:1.4}.filter-content{padding:16px}.empty-state{padding:22px}#products{margin-bottom:30px}.catalogue-summary{padding:8px 0}}

.product-photo-frame{position:relative}.image-note{position:absolute;right:7px;bottom:8px;padding:3px 7px;background:#fffef4ee;color:#465748;border-radius:3px;font-size:10px}
.card-info p.reference-price,.reference-price{font-weight:700;color:var(--green);white-space:normal;overflow:visible;text-overflow:clip;font-size:16px;line-height:1.5;margin:8px 0}.list-row .reference-price{margin:8px 0}.list-row small{display:block;line-height:1.6;color:#667264}@media(max-width:520px){.card-info p.reference-price{font-size:14px;margin:5px 0}}
@media(max-width:520px){.card-info p:nth-of-type(4),.card-info p:nth-of-type(5){display:none}.card-info p.reference-price{line-height:1.35}.fruit-card>button{min-height:44px}.hero{padding-bottom:6px}}
@media(min-width:521px){.fruit-card img,.fruit-card .photo-empty{max-height:180px}}
/* Brand decoration stays within the compact introduction, away from product cards. */
.catalogue{background:#fcfbf8}.site-header{background:#fffffff5}.site-header .brand{display:inline-flex;align-items:center;gap:9px;flex:none;text-decoration:none}.site-header .brand img{width:32px;height:32px;object-fit:contain}.site-header .brand .brand-word{background:none;border-radius:0;padding:0;font-family:Georgia,serif;font-style:italic;font-size:28px;letter-spacing:.03em}.hero{position:relative;isolation:isolate;overflow:hidden;max-width:none}.hero::before{content:'';position:absolute;right:24px;top:0;width:138px;height:138px;background:url('/brand/iikamo-mark-v1.png') center/contain no-repeat;opacity:.06;pointer-events:none;z-index:-1}.fruit-card,.list-row,.plan-card,.catalogue dialog{background:#fff}.catalogue footer{background:#fff;text-align:center;padding-top:32px}.footer-brand{display:inline-flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;color:#26382f}.footer-brand img{width:76px;height:76px;object-fit:contain}.footer-brand .brand-word{font-family:Georgia,serif;font-style:italic;font-size:32px;letter-spacing:.12em}.brand-tagline{font-size:15px;letter-spacing:.09em;line-height:1.8;margin:16px 0 24px}.catalogue footer>a:last-child{font-size:12px;color:#687468}
@media(max-width:520px){.site-header .brand{gap:6px}.site-header .brand img{width:25px;height:25px}.site-header .brand .brand-word{font-size:24px;letter-spacing:0}.hero::before{right:4px;top:0;width:70px;height:70px;opacity:.06}.footer-brand img{width:64px;height:64px}.brand-tagline{font-size:14px}}
@media(max-width:360px){.site-header{padding-left:12px;padding-right:12px}.site-header nav{gap:6px}.site-header nav a{font-size:10px}.site-header .brand .brand-word{font-size:22px}}
.site-header .brand .brand-word{display:inline}
@media(min-width:521px){.hero::before{width:88px;height:88px}}
.delivery-guide{padding:24px;background:#fff;border:1px solid var(--border);border-radius:12px}.delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.delivery-guide h2{font-size:24px}.delivery-guide h3{font-size:18px}.delivery-guide p{line-height:1.8}.delivery-estimate{padding:16px;background:#f2f5ee;border-radius:8px;line-height:1.7;font-weight:600}@media(max-width:520px){.delivery-grid{grid-template-columns:1fr;gap:10px}.delivery-guide{padding:18px}.delivery-guide h2{font-size:21px}}
