/* TOP only. Keep the approved sea hero, botanical art, brand, and shared chrome. */
#main { line-break:strict; word-break:normal; overflow-wrap:break-word; }
#main :is(p,li,dt,dd,a,button,summary) { font-size:16px; }
#main :is(p,li,dd) { line-height:1.95; text-wrap:pretty; }
#main :is(h2,h3,h4) { line-break:strict; text-wrap:balance; }
#main :is(h3,h4) { min-width:0; }
#main .display-title { font-size:clamp(30px,3vw,43px); line-height:1.6; letter-spacing:.035em; }
#main .top-line { display:block; }
#main .top-unit { display:inline-block; max-width:100%; }
#main .top-prose { max-width:38em; }
#main .top-prose p + p { margin-top:1em; }
#main .top-prose + :is(.text-link,.knowledge-livestock) { margin-top:24px; }
#main .top-prose :is(p,li) { color:var(--body); }
#main .top-prose { margin-top:24px; }
#main .top-lead-line { display:block; }

/* Reading sizes are independent of the number of columns. */
#main :is(.eyebrow,.small-label,.section-number,.visual-label,.image-credit,
 .specimen-caption,.catalog-category,.contact-entry-number,.growth-stage,
 .image-index,.gallery-source-note,.hero-eyebrow,.scroll-cue) {
 font-size:14px; line-height:1.8; letter-spacing:.06em;
}
#main :is(figcaption,.company-photo figcaption>span,.material-profile dd small,
 .everyday-image figcaption>span,.instagram-inner p small,.company-year small,
 .news-meta,.news-meta time,.news-meta>span,.contact-entry>small) {
 font-size:14px; line-height:1.85; letter-spacing:.015em;
}
#main :is(.text-link,.catalog-link,.button) {
 font-size:16px; line-height:1.8; min-height:48px; max-width:100%;
}
#main .text-link { gap:20px; }
#main .button { gap:18px; min-width:0; padding:15px 22px; }
#main :is(a,button,summary):focus-visible { outline:3px solid #a76616; outline-offset:5px; }
#main .product-tabs button:focus-visible { outline-offset:-5px; }

/* The approved two-line main title and photograph stay stable. */
#main .hero { height:auto; min-height:clamp(740px,calc(100svh - var(--header-height)),890px); max-height:none; }
#main .hero-inner { padding-bottom:160px; }
#main .hero-description { font-size:16px; line-height:1.95; max-width:32em; }
#main .hero-button { min-width:260px; }
#main .hero-sub-links { gap:8px 26px; flex-wrap:wrap; }
#main .hero-sub-links a { min-height:48px; font-size:16px; }
#main .hero-signature { font-size:14px; }
#main .hero-signature small { font-size:14px; letter-spacing:.08em; }
#main .motion-toggle,#main .motion-control-copy { font-size:16px; line-height:1.8; }
#main .motion-toggle { min-height:48px; }

#main .purpose-inner { grid-template-columns:155px minmax(0,1fr); gap:30px; }
#main .purpose-inner>p { font-size:20px; line-height:1.7; }
#main .purpose-links { gap:22px; }
#main .purpose-links>a { min-height:88px; padding-block:12px; gap:5px 12px; }
#main .purpose-links span { font-size:16px; line-height:1.8; }
#main .purpose-links small { font-size:14px; line-height:1.85; }

/* Material introduction: readable copy alongside the original botanical composition. */
#main .algit-layout { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:clamp(42px,6vw,90px); }
#main .algit-copy .lead-copy { font-size:18px; line-height:1.95; letter-spacing:.015em; }
#main .algit-copy>p:not(.eyebrow):not(.lead-copy) { font-size:16px; line-height:1.95; }
#main .algit-copy>.material-note { font-size:14px!important; line-height:1.95!important; }
#main .material-profile>div { grid-template-columns:96px minmax(0,1fr); gap:18px; }
#main .material-profile dt { font-size:14px; }
#main .material-profile dd { font-size:16px; }
#main .material-profile [lang=en] { overflow-wrap:anywhere; }
#main .algit-visual { padding-bottom:48px; }
#main .image-credit { right:14px; left:14px; text-align:center; bottom:14px; letter-spacing:0; }
#main .algit-connection { grid-template-columns:minmax(0,1fr); gap:12px; margin-top:28px; font-size:16px; }
#main .algit-connection>span { justify-self:start; }
#main .algit-connection>i { display:none; }
#main .algit-connection li { font-size:16px; }

/* Business fields keep their distinct crops and the staggered desktop rhythm. */
#main .section-heading { gap:40px; align-items:end; }
#main .section-heading>div { min-width:0; }
#main .section-intro { width:36%; max-width:25em; flex-shrink:1; padding:0; font-size:16px; line-height:1.95; }
#main .section-intro .top-lead-line + .top-lead-line { margin-top:.45em; }
#main .business-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(26px,3vw,42px); }
#main .business-body>p:not(.small-label) { font-size:16px; line-height:1.95; }
#main .business-body h3 { font-size:28px; line-height:1.65; }
#main .business-body .text-link { font-size:16px; }
#main .business-examples { gap:8px; }
#main .business-examples li { font-size:16px; line-height:1.85; }
#main .business-support { gap:48px; }
#main .business-support h3 { font-size:clamp(25px,2.2vw,31px); }
#main .business-support>div>p:not(.small-label) { font-size:16px; line-height:1.95; }

/* Product facts and action labels have space at every breakpoint. */
#main .product-tabs button { font-size:16px; min-height:64px; line-height:1.8; padding:16px 20px; }
#main .product-tabs button>span { font-size:14px; }
#main .product-tabs button>.top-tab-label { display:block; font-size:16px; min-width:0; max-width:100%; }
#main .product-guidance { max-width:56em; font-size:16px; line-height:1.95; }
#main .product-panel { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(40px,5vw,72px); }
#main .product-content>p:not(.small-label) { font-size:16px; line-height:1.95; max-width:38em; }
#main .product-content h3 { font-size:clamp(28px,2.6vw,37px); }
#main .product-content h3 small { font-size:16px; line-height:1.8; }
#main .product-facts>div { grid-template-columns:106px minmax(0,1fr); gap:20px; padding-block:13px; }
#main .product-facts :is(dt,dd) { font-size:16px; line-height:1.9; }
#main .product-actions .button { min-height:56px; }
#main .product-actions .text-link { font-size:16px; }
#main .product-specimen img { max-height:310px; max-width:78%; object-fit:contain; }
#main .product-specimen::before { background-image:url('top-display/sprig-700.png'); }
#main .product-panel { scroll-margin-top:8px; }
#main [id] { scroll-margin-top:8px; }
#main .specimen-food img { width:240px; max-height:245px; max-width:80%; }
#main .photo-catalog { padding-top:48px; margin-top:16px; }
#main .photo-catalog-heading { gap:32px; }
#main .photo-catalog-heading>p { font-size:16px; line-height:1.95; max-width:25em; }
#main .photo-catalog-heading h3 { font-size:clamp(26px,2.3vw,33px); line-height:1.65; }
#main .photo-catalog-grid { gap:32px; }
#main .photo-catalog-item { padding-bottom:16px; }
#main .catalog-copy { display:flex; flex-direction:column; flex:1; min-width:0; }
#main .photo-catalog-item h4 { font-size:18px; min-height:0; line-height:1.7; letter-spacing:.015em; margin-top:6px; }
#main .catalog-description { font-size:16px; line-height:1.9; margin-block:12px; }
#main .catalog-image { display:block; }
#main .photo-catalog-item .catalog-image img { object-fit:contain; }
#main .catalog-link { font-size:16px; margin-top:auto; gap:14px; }
#main .product-bottom { margin-top:32px; }

/* The latter half uses prose, steps, facts and questions according to their roles. */
#main :is(.knowledge-layout,.quality-layout,.company-layout,.shop-guide-layout) { gap:clamp(48px,6vw,88px); }
#main :is(.knowledge-copy,.quality-heading,.company-story)>p:not(.eyebrow) { font-size:16px; line-height:1.95; max-width:38em; }
#main .growth-guide li { gap:22px; padding-block:27px; }
#main .growth-guide li>div { min-width:0; flex:1; }
#main .growth-guide li p { font-size:16px; line-height:1.9; }
#main .growth-guide h3 { font-size:26px; }
#main .growth-guide-title { font-size:16px; }
#main .knowledge-preparation h3 { font-size:18px; line-height:1.8; }
#main .knowledge-preparation p { font-size:16px; line-height:1.95; }
#main .knowledge-copy .top-prose + .text-link { margin-top:18px; }
#main .knowledge-copy .knowledge-livestock .text-link { margin-top:4px; }
#main .quality-process { padding:32px 24px 28px; }
#main .quality-process ol { padding-left:0; }
#main .quality-process li { gap:20px; padding-block:24px; }
#main .quality-process li>span { font-size:14px; }
#main .quality-process h3 { font-size:18px; line-height:1.8; }
#main .quality-process li p { font-size:16px; line-height:1.9; }
#main .process-note { margin-left:0; font-size:17px; line-height:1.9; }
#main .traceability-explanation { padding:24px 0 0; }
#main .traceability-explanation h3 { font-size:18px; }
#main .traceability-explanation p { font-size:16px; line-height:1.95; }
#main .company-info { font-size:16px; }
#main .company-info>div { grid-template-columns:90px minmax(0,1fr); gap:22px; padding-block:22px; }
#main .company-info :is(dt,dd) { font-size:16px; line-height:1.9; }
#main .company-year p { font-size:16px; }
#main .company-photo .photo-window { aspect-ratio:6; }
#main .company-photo img { object-fit:contain; }
#main .company-history { max-width:none; }
#main .company-history h3 { font-size:18px; }
#main .company-history time { font-size:14px; line-height:1.9; }
#main .company-history li p { font-size:16px; line-height:1.9; }
#main .news-layout { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:64px; }
#main .news-row h3 { font-size:18px; line-height:1.85; }
#main .news-summary { font-size:16px; line-height:1.95; }
#main .news-meta { gap:12px 24px; flex-wrap:wrap; }
#main .everyday-heading>p:last-child { font-size:16px; line-height:1.95; }
#main .everyday-image figcaption strong { font-size:24px; }
#main .gallery-source-note { margin-top:24px; }
#main .shop-guide-copy>p:not(.eyebrow) { font-size:16px; line-height:1.95; max-width:38em; }
#main .purchase-checkpoints { margin-top:24px; }
#main .purchase-checkpoints :is(dt,dd) { font-size:16px; line-height:1.9; }
#main .purchase-steps h3 { font-size:18px; line-height:1.8; }
#main .purchase-steps p { font-size:16px; line-height:1.95; }
#main .order-support h3 { font-size:18px; }
#main .order-support p { font-size:16px; line-height:1.95; }

/* FAQ answers use the full available reading column, without nested narrow margins. */
#main .faq-layout { grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:64px; align-items:start; }
#main .faq-layout>div:first-child { display:block; }
#main .faq-intro { max-width:30em; font-size:16px; line-height:1.95; }
#main .faq-all { margin-top:24px; }
#main .faq-list summary { display:grid; grid-template-columns:24px minmax(0,1fr) 20px; gap:16px; font-size:16px; line-height:1.85; padding-block:26px; }
#main .faq-q { font-size:18px; }
#main .question-text { min-width:0; text-wrap:pretty; }
#main .faq-answer { font-size:16px; padding:0 0 28px 40px; line-height:1.95; }
#main .faq-answer p { max-width:40em; font-size:16px; line-height:1.95; }
#main .faq-answer p + p { margin-top:.85em; }
#main .faq-answer .text-link { font-size:16px; }

#main .contact-heading-copy { min-width:0; }
#main .contact-heading .display-title>span { display:block; }
#main .contact-heading-copy>p:last-child { font-size:16px; line-height:1.95; max-width:34em; }
#main .contact-entry { padding:36px 40px 40px 0; }
#main .contact-entry+article { padding:36px 0 40px 40px; }
#main .contact-entry h3 { font-size:clamp(26px,2.3vw,31px); line-height:1.7; }
#main .contact-entry p { font-size:16px; line-height:1.95; max-width:38em; }
#main .contact-preparation h4 { font-size:18px; line-height:1.8; }
#main .contact-preparation li { font-size:16px; line-height:1.9; }
#main .contact-entry .contact-preparation p { font-size:14px; line-height:1.95; }
#main .contact-entry .contact-preparation { margin-bottom:28px; }
#main .contact-entry .button { font-size:16px; min-height:58px; margin-top:auto; }
#main .contact-reception p { font-size:14px; line-height:1.95; }
#main .contact-reception a { font-size:16px; }
#main .contact-telephone>span { font-size:14px; }
#main .contact-shop p { font-size:16px; }
#main .contact-shop small { font-size:18px; line-height:1.8; }

/* Keep the subject, hands and packaging inside their own visual frame. */
#main .knowledge-scene { padding-right:0; }
#main .knowledge-photo .photo-window,
#main .quality-photo .photo-window,
#main .contact-photo .photo-window { aspect-ratio:1400 / 933; }
#main .knowledge-scene .knowledge-botanical { right:0; bottom:-18px; width:112px; height:168px; }
#main .business-food .business-image-link img { object-fit:contain; background:#f4f6ed; }
#main .everyday-image img { object-fit:contain; background:#f4f6ed; }
#main .gallery-food .everyday-image-link { aspect-ratio:1200 / 626; }
#main .gallery-candy .everyday-image-link { aspect-ratio:1100 / 511; }
#main .gallery-garden .everyday-image-link { aspect-ratio:733 / 1100; }
#main .contact-preparation li { padding-left:18px; }
#main .contact-grid { align-items:stretch; }

@media (max-width:1100px) {
 #main .purpose-inner { display:block; }
 #main .purpose-inner>p br { display:none; }
 #main .purpose-links { margin-top:20px; gap:20px; }
 #main .algit-layout { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:40px; }
 #main .business-grid { grid-template-columns:minmax(0,1fr); gap:44px; }
 #main .business-item { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:36px; margin-top:0; align-items:start; }
 #main .business-item .business-image-link { aspect-ratio:1.1; min-height:0; }
 #main .business-body { padding:0; }
 #main .business-body h3 { margin-top:8px; }
 #main .business-support { grid-template-columns:minmax(0,1fr); gap:20px; }
 #main .photo-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 30px; }
 #main .photo-catalog-item h4 { min-height:0; }
 #main :is(.knowledge-layout,.quality-layout,.company-layout,.shop-guide-layout) { grid-template-columns:minmax(0,1fr); gap:40px; }
 #main :is(.knowledge-copy,.quality-heading,.company-story)>p:not(.eyebrow),#main .top-prose { max-width:42em; }
 #main .knowledge-scene,#main .quality-photo { max-width:600px; }
 #main .growth-guide,#main .quality-process { max-width:none; width:100%; }
 #main .news-layout,#main .faq-layout { grid-template-columns:minmax(0,1fr); gap:32px; }
 #main .contact-entry { padding-right:28px; }
 #main .contact-entry+article { padding-left:28px; padding-right:0; }
}

@media (max-width:960px) {
 #main .purpose-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #main .algit-layout { display:flex; flex-direction:column-reverse; gap:48px; align-items:stretch; }
 #main .algit-visual { width:90%; max-width:500px; margin-inline:auto; }
 #main .algit-copy { max-width:42em; }
 #main .algit-connection { display:grid; }
 #main .section-heading { display:block; }
 #main .section-intro { width:auto; max-width:38em; margin-top:24px; }
 #main .product-panel { grid-template-columns:minmax(0,1fr); gap:32px; }
 #main .product-specimen { width:85%; max-width:420px; margin-inline:auto; }
 #main .photo-catalog-heading { display:block; }
 #main .photo-catalog-heading>p { margin-top:20px; max-width:38em; }
 #main .contact-grid { grid-template-columns:minmax(0,1fr); border-bottom:0; }
 #main .contact-entry,#main .contact-entry+article { padding:32px 0; border-left:0; border-bottom:1px solid #bfd6cd; }
 #main .contact-entry .button { width:auto; align-self:start; }
 #main .contact-photo { max-width:620px; }
}

@media (max-width:700px) {
 #main .section-space { padding-block:76px; }
 #main .display-title { font-size:clamp(28px,6.9vw,34px); letter-spacing:.025em; line-height:1.65; }
 #main .hero-inner { padding-top:48px; padding-bottom:210px; }
 #main .hero-eyebrow { letter-spacing:.015em; gap:10px; }
 #main .hero-description { max-width:30em; line-height:1.95; }
 #main .hero-description br:first-of-type { display:block; }
 #main .hero-description br:nth-of-type(2) { display:none; }
 #main .hero-sub-links { gap:4px 24px; max-width:100%; }
 #main .hero-button { margin-top:26px; }
 #main .top-lead-line { display:inline; }
 #main .top-lead-line::after { content:' '; }
 #main .algit-copy .lead-copy { font-size:18px; }
 #main .algit-copy .lead-copy .top-lead-line { display:block; }
 #main .algit-copy .lead-copy .top-lead-line::after { content:none; }
 #main .purpose-links { margin-top:18px; gap:14px 20px; }
 #main .purpose-links>a { min-height:96px; padding-left:14px; }
 #main .algit-visual { margin-top:4px; }
 #main .algit-copy>.material-note { margin-top:24px!important; }
 #main .material-profile>div { grid-template-columns:96px minmax(0,1fr); gap:16px; }
 #main .business-item { grid-template-columns:minmax(0,1fr); gap:0; }
 #main .business-body { padding-top:24px; }
 #main .business-item .business-image-link { aspect-ratio:1.5; }
 #main .business-food .business-image-link { aspect-ratio:1.15; }
 #main .business-body h3 { font-size:27px; }
 #main .business-grid { gap:44px; }
 #main .business-support { margin-top:40px; gap:20px; }
 #main .product-tabs button { padding:14px 8px; font-size:16px; justify-content:center; }
 #main .product-tabs button>span { display:none; }
 #main .product-specimen { min-height:310px; max-width:360px; width:95%; }
 #main .product-specimen img { max-height:265px; }
 #main .specimen-food img { max-height:245px; }
 #main .product-facts>div { grid-template-columns:106px minmax(0,1fr); gap:18px; }
 #main .product-actions { gap:12px 20px; }
 #main .product-actions .button { width:100%; }
 #main .photo-catalog { padding-top:36px; margin-top:8px; }
 #main .photo-catalog-heading h3 { font-size:27px; }
 #main .product-bottom { margin-top:28px; }
 #main .growth-guide li { gap:16px; }
 #main .growth-guide svg { width:42px; height:42px; }
 #main .quality-process { padding:28px 20px; }
 #main .quality-process li { gap:16px; }
 #main .quality-process li>span { width:38px; height:38px; }
 #main .quality-process li:not(:last-child)::after { left:18px; }
 #main .company-info>div { grid-template-columns:78px minmax(0,1fr); gap:18px; }
 #main .company-photo .photo-window { aspect-ratio:6; }
 #main .news-row h3 { font-size:18px; }
 #main .news-meta { font-size:14px; }
 #main .everyday-heading h2 { font-size:30px; }
 #main .instagram-inner .text-link { margin-left:0; }
 #main .faq-list summary { gap:12px; grid-template-columns:22px minmax(0,1fr) 20px; }
 #main .faq-answer { padding-left:0; padding-right:0; }
 #main .contact-heading .display-title { font-size:clamp(28px,6.9vw,34px); }
 #main .contact-grid { margin-top:32px; }
 #main .contact-entry h3 { font-size:28px; }
 #main .contact-entry .button { width:100%; align-self:stretch; }
 #main .contact-preparation h4 { font-size:18px; }
 #main .contact-reception { gap:24px; }
}

@media (max-width:600px) {
 #main .product-facts>div { grid-template-columns:minmax(0,1fr); gap:4px; }
 #main .photo-catalog-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 #main .photo-catalog-item { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:20px; padding-bottom:26px; align-items:start; }
 #main .catalog-category { margin-top:0; }
 #main .catalog-description { margin-top:10px; }
 #main .catalog-link { margin-top:0; }
 #main .photo-catalog-item:nth-child(2) .catalog-image img { padding:10px 14px; }
 #main .everyday-gallery-grid { grid-template-columns:minmax(0,1fr); }
 #main .everyday-image { grid-column:auto; grid-row:auto; padding-top:0; max-width:none; }
 #main .everyday-image .everyday-image-link { aspect-ratio:1.5; }
 #main .gallery-food .everyday-image-link { aspect-ratio:1200 / 626; }
 #main .gallery-candy .everyday-image-link { aspect-ratio:1100 / 511; }
 #main .gallery-garden .everyday-image-link { aspect-ratio:733 / 1100; max-width:300px; margin-inline:auto; }
 #main .everyday-image figcaption { grid-template-columns:auto minmax(0,1fr); gap:10px 20px; align-items:baseline; }
 #main .everyday-image figcaption>span { font-size:14px; }
}

@media (max-width:480px) {
 #main .purpose-links { grid-template-columns:minmax(0,1fr); gap:0; }
 #main .purpose-links>a { min-height:86px; margin-block:6px; padding-left:18px; }
 #main .top-prose { margin-top:22px; }
 #main .algit-copy .lead-copy { font-size:17px; }
 #main .quality-process { padding-inline:16px; }
 #main .purchase-checkpoints>div { grid-template-columns:minmax(0,1fr); gap:4px; }
 #main .photo-catalog-item { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
 #main .catalog-image { width:100%; max-width:320px; margin-inline:auto; }
 #main .catalog-image img { max-height:300px; }
 #main .catalog-description { max-width:32em; margin-block:8px 12px; }
 #main .photo-catalog-item h4 { font-size:20px; }
 #main .catalog-link { align-self:start; }
}

@media (max-width:365px) {
 #main .display-title { letter-spacing:0; }
 #main .photo-catalog-item { display:grid; gap:16px; }
 #main .catalog-image { width:100%; }
 #main .catalog-category { margin-top:0; }
 #main .material-profile>div { grid-template-columns:minmax(0,1fr); gap:4px; }
 #main .product-facts>div { grid-template-columns:minmax(0,1fr); gap:5px; }
 #main .company-info>div { grid-template-columns:minmax(0,1fr); gap:6px; }
 #main .growth-guide li { flex-wrap:wrap; }
 #main .growth-guide li>div { flex-basis:calc(100% - 38px); }
 #main .growth-guide svg { margin-left:38px; }
}

@media (prefers-reduced-motion:reduce) {
 #main :is(a,button,summary,img) { transition:none; }
}
