/* Shared details preserve the approved photography and marine artwork. */
h4{margin:0}
body{line-break:strict;word-break:normal;text-wrap:pretty}
.display-title,.photo-catalog-heading h3,.everyday-heading h2{word-break:normal;overflow-wrap:normal;text-wrap:balance}
.display-title{font-weight:500;line-height:1.58;letter-spacing:.045em}
.eyebrow:not(.hero-eyebrow){font-weight:600;letter-spacing:.1em}
.section-number{font-variant-numeric:tabular-nums}
.business-body,.product-content,.shop-guide-copy,.shop-guide-detail,.faq-list,.footer-nav>div{min-width:0}
.text-link,.button,.header-contact,.footer-nav a,.footer-legal-links a,.back-top{touch-action:manipulation}
.text-link:active,.footer-nav a:active,.footer-legal-links a:active{color:var(--teal-deep)}
.button:focus-visible,.text-link:focus-visible,.photo-catalog-item:focus-visible,.business-image-link:focus-visible{outline:3px solid #996017;outline-offset:5px}
.text-link:focus-visible>span:not(.sr-only),.button:focus-visible>span:not(.sr-only){transform:translate(2px,-2px)}
.desktop-nav a[aria-current="location"],.mobile-menu nav a[aria-current="location"]{color:var(--teal)}
.menu-brand{display:block;min-width:0;max-width:calc(100% - 64px)}
.menu-brand img{width:218px;height:auto;aspect-ratio:273/37}
.mobile-menu{height:100svh;height:100dvh;padding-top:max(22px,env(safe-area-inset-top));padding-bottom:max(34px,env(safe-area-inset-bottom))}
.menu-top{position:sticky;top:0;z-index:3;background:#f7faf6;padding:8px 0 17px;margin-bottom:19px}
.mobile-menu nav a:active{color:var(--teal-deep);background:#e9f1e9}
.mobile-menu .menu-useful-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding-top:22px}
.mobile-menu .menu-useful-links a{font-size:13px;line-height:1.8;min-height:55px;padding:13px 0;gap:8px;border-top:1px solid #cfddd7;border-bottom:0}
.mobile-menu .menu-useful-links a>span{font-size:16px;flex-shrink:0}
.mobile-menu .menu-useful-links a:nth-last-child(-n+2){border-bottom:1px solid #cfddd7}
.menu-extra{gap:17px;padding-top:25px}
.fallback-navigation{display:none}
.navigation-ready .fallback-navigation{display:none!important}
.product-panel{scroll-margin-top:calc(var(--header-height) + 30px)}
.product-tabs button:focus-visible{outline-offset:-5px;z-index:1}
.product-tabs button:active{background:#dfeee7}
.product-panel:focus-visible{outline-offset:8px}
.product-facts>div{display:grid;grid-template-columns:94px minmax(0,1fr);gap:15px;padding-block:10px;border-bottom:1px solid #e0e7df}
.product-facts dt{color:#536e64;font-size:12px;line-height:1.85}
.product-facts dd{margin:0;min-width:0;line-height:1.85}
.product-actions .text-link{max-width:100%;min-height:48px}
.catalog-image{isolation:isolate;border-radius:2px 18px 2px 2px}
.photo-catalog-item:nth-child(3) .catalog-image img{object-fit:cover;object-position:65% 50%}
.photo-catalog-item h4{margin-bottom:8px}
.catalog-description{margin-top:0}
.catalog-open{z-index:2}
.material-profile dd small{overflow-wrap:normal}
.growth-guide li>div,.quality-process li>div{min-width:0;flex:1}
.growth-stage{flex-shrink:0}
.growth-guide-title{color:#536449}
.company-info dt{color:#536e64}
.news-heading{min-width:0}
.news-summary{font-size:12px;line-height:1.95;color:var(--body);margin-top:10px;max-width:620px}
.news-row{transition:background .25s,color .25s}
.news-row:focus-visible{outline-offset:6px;background:#f5f8f3}
.news-row:active h3{color:var(--teal-deep)}
.news-catalog-link{font-size:12px;margin-top:22px;max-width:100%}
.purchase-checkpoints{margin-top:26px;font-size:13px;line-height:1.95}
.purchase-checkpoints>div{padding-block:13px;border-top:1px solid #d9e1d4}
.purchase-checkpoints>div:last-child{border-bottom:1px solid #d9e1d4}
.purchase-checkpoints dt{font-size:12px;color:#536e64;margin-bottom:4px}
.purchase-checkpoints dd{margin:0;color:var(--ink)}
.purchase-steps li>div{min-width:0}
.faq-list summary{border-radius:2px;transition:background .2s,color .2s}
.faq-list summary:focus-visible{outline-offset:4px;background:#f2f6f1}
.faq-list summary:active{color:var(--teal-deep);background:#f2f6f1}
.faq-list details[open] summary{color:var(--teal)}
.faq-answer{max-width:100%}
.faq-answer p{max-width:690px}
.faq-answer .text-link{max-width:100%;min-height:44px}
.contact-grid{align-items:stretch}
.contact-entry{display:flex;flex-direction:column;min-width:0}
.contact-photo{flex-shrink:0}
.contact-entry .button{margin-top:auto;position:relative;top:0}
.contact-entry .contact-preparation{margin-bottom:27px}
.contact-entry>small{max-width:100%}
.contact-reception{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;padding-block:25px 0}
.contact-reception>div{max-width:720px;min-width:0}
.contact-reception p{font-size:12px;line-height:1.95;color:var(--body)}
.contact-reception p+p{margin-top:5px}
.contact-reception p a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}
.contact-reception p a span{display:inline-block;margin-left:4px;text-decoration:none}
.contact-telephone{display:grid;gap:4px;min-height:54px;padding:5px 0 5px 26px;border-left:1px solid #bfd6cd;transition:color .25s}
.contact-telephone span{font-size:11px;color:var(--body);line-height:1.8}
.contact-telephone strong{font-family:var(--sans);font-size:22px;font-weight:500;line-height:1.5;letter-spacing:.025em;white-space:nowrap;color:var(--teal)}
.contact-telephone:hover strong,.contact-telephone:active strong{color:var(--teal-deep)}
.contact-shop{padding-top:24px}
.footer-nav a{min-height:44px;padding-block:9px}
.footer-brand address a{min-height:44px;display:inline-flex;align-items:center}
.footer-bottom{flex-wrap:wrap;padding-block:18px;row-gap:7px}
.footer-legal-links{display:flex;flex-wrap:wrap;gap:4px 25px;align-items:center}
.footer-legal-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:11px;line-height:1.8}
.footer-legal-links a:hover{color:var(--teal);text-decoration:underline;text-underline-offset:4px}

/* A quiet visual rhythm connects photography, typography and chapter backgrounds. */
.site-header{border-bottom-color:#dbe7e280}
.site-header.scrolled{box-shadow:0 7px 24px #183b450b}
.section-space{padding-block:clamp(82px,7.7vw,112px)}
.algit-section{padding-top:clamp(82px,8vw,116px)}
.section-heading{margin-bottom:48px}
.section-intro{letter-spacing:.025em;line-height:2;padding-bottom:4px}
.algit-copy .lead-copy{font-weight:500;line-height:1.95;letter-spacing:.025em}
.business-section{background:linear-gradient(180deg,#fff 0,#f5f7f1 64px,#f5f7f1 calc(100% - 64px),#fff 100%)}
.business-agriculture .business-image-link{border-radius:3px 32px 3px 3px}
.business-livestock .business-image-link{border-radius:3px 3px 3px 32px}
.business-food .business-image-link{border-radius:32px 3px 3px 3px}
.business-image-link{box-shadow:0 12px 26px #254c400c}
.business-body{padding-top:29px}
.business-body h3,.product-content h3,.contact-entry h3{font-weight:500;letter-spacing:.035em}
.business-support{padding-top:38px}
.products-section .section-heading{margin-bottom:38px}
.product-guidance{line-height:2}
.product-panel{padding-block:52px}
.product-facts>div{padding-block:12px;border-bottom-color:#dce6dc}
.photo-catalog{padding-top:46px}
.photo-catalog-heading{margin-bottom:32px}
.photo-catalog-heading h3{letter-spacing:.035em;line-height:1.65}
.photo-catalog-item{border-bottom-color:#dce7dd}
.photo-figure figcaption{letter-spacing:.015em;line-height:1.9}
.knowledge-section{background:linear-gradient(180deg,#fff 0,#f8f5ee 64px,#f4f5eb calc(100% - 64px),#fff 100%)}
.knowledge-preparation{padding-top:4px}
.quality-process{background:linear-gradient(145deg,#fbfcf8,#f3f8f0);border-radius:2px 54px 2px 2px}
.process-note{line-height:2}
.traceability-explanation{margin-top:25px;padding-top:25px}
.company-section{background:linear-gradient(180deg,#fff 0,#f3f7f6 64px,#edf5f0 calc(100% - 64px),#fff 100%);border-block-color:transparent}
.company-history li{padding-block:14px}
.company-info>div{padding-block:24px}
.news-heading .display-title{line-height:1.65;letter-spacing:.035em}
.news-row{padding-block:28px}
.news-meta{margin-bottom:15px}
.instagram-section{background:linear-gradient(180deg,#fff 0,#edf4ef 64px,#eaf2ec calc(100% - 64px),#fbfaf6 100%);border-block-color:transparent}
.everyday-heading h2{line-height:1.58;letter-spacing:.035em}
.gallery-food .everyday-image-link{border-radius:2px 32px 2px 2px}
.gallery-candy .everyday-image-link{border-radius:2px 2px 26px 2px}
.gallery-garden .everyday-image-link{border-radius:28px 2px 2px 2px}
.everyday-image figcaption{margin-top:17px}
.instagram-inner{border-top-color:#d2dfd4}
.shop-guide-section{background:linear-gradient(180deg,#fbfaf6 0,#fbfaf6 calc(100% - 64px),#fff 100%);border-block-color:transparent}
.shop-guide-copy>p:not(.eyebrow){line-height:2.05}
.purchase-checkpoints>div{padding-block:15px}
.purchase-steps li{padding-block:25px}
.faq-list summary{padding-block:26px;line-height:1.9}
.faq-answer{padding-bottom:29px}
.contact-section{background:linear-gradient(180deg,#edf5f2 0,#edf5f2 calc(100% - 88px),#fff 100%)}
.contact-heading .display-title{font-size:clamp(29px,3vw,41px);line-height:1.65;letter-spacing:.035em}
.contact-heading .display-title>span{display:inline-block;max-width:100%}
.contact-heading-copy>p:last-child{max-width:540px;line-height:2.05}
.agency-photo .photo-window{border-radius:2px 26px 2px 2px}
.personal-photo .photo-window{border-radius:2px 2px 2px 26px}
.contact-preparation h4{font-weight:600;letter-spacing:.01em}
.site-footer{padding-top:148px}
.footer-nav>div>span{font-size:13px;font-weight:600;letter-spacing:.03em}
.footer-nav a{font-size:12px;letter-spacing:.02em}
.footer-tagline{line-height:1.85;letter-spacing:.035em}
.footer-bottom{padding-block:22px}
@media (min-width:1101px){
 .business-grid{gap:clamp(28px,2.8vw,40px)}
 .photo-catalog-grid{gap:32px}
 .everyday-gallery-grid{gap:28px}
 .footer-top{gap:clamp(44px,6vw,86px)}
}
@media (hover:hover) and (pointer:fine){
 .business-image-link:hover{box-shadow:0 17px 29px #254c4014}
}

.not-found-page{min-height:100svh;display:flex;flex-direction:column;background:#f6faf8}
.recovery-header{background:#fff;border-bottom:1px solid #d8e5df;padding-block:23px}
.recovery-header>.container{display:flex;justify-content:space-between;align-items:center;gap:25px}
.recovery-brand{display:block;min-width:0}
.recovery-brand img{width:245px;height:auto;aspect-ratio:273/37}
.recovery-header .text-link{font-size:13px;border-bottom:0}
.recovery-main{flex:1;display:grid;align-items:center;padding-block:clamp(60px,8vw,115px)}
.recovery-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:60px;align-items:center}
.recovery-copy{min-width:0}
.recovery-copy .eyebrow{margin-bottom:20px}
.recovery-copy h1{font-family:var(--serif);font-size:clamp(28px,3vw,43px);line-height:1.6;font-weight:550;letter-spacing:.05em;text-wrap:balance}
.recovery-copy h1 span{display:inline-block}
.recovery-copy>p:not(.eyebrow){font-size:15px;color:var(--body);line-height:2;margin-top:23px;max-width:560px}
.recovery-copy>.button{margin-top:30px;max-width:100%}
.recovery-number{font-family:var(--serif);font-size:clamp(100px,14vw,190px);line-height:1;letter-spacing:-.035em;color:#b5d9cb;align-self:start;text-align:right}
.recovery-links{display:flex;flex-wrap:wrap;gap:15px 32px;margin-top:29px}
.recovery-links .text-link{font-size:13px}
.recovery-footer{background:#fff;border-top:1px solid #d8e5df;padding-block:22px}
.recovery-footer>.container{display:flex;justify-content:space-between;align-items:center;gap:22px;color:var(--body);font-size:11px;line-height:1.9}
.recovery-footer p{max-width:100%}
.recovery-footer small{font-size:10px}
@media (max-width:1250px) and (min-width:1101px){.header-inner{gap:20px}.desktop-nav{gap:13px}.desktop-nav a{font-size:13px}.header-shop{font-size:12px;gap:8px}}
@media (max-width:1100px){
 .fallback-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;padding-block:12px;border-bottom:1px solid var(--line)}
 .fallback-navigation a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;line-height:1.7}
 .product-facts>div{grid-template-columns:80px minmax(0,1fr);gap:12px}
 .contact-reception{gap:22px;grid-template-columns:minmax(0,1fr) auto}
 .contact-telephone{padding-left:20px}
 .contact-telephone strong{font-size:20px}
 .recovery-layout{gap:40px}
}
@media (max-width:850px){
 .section-heading{margin-bottom:36px}
 .product-panel{padding-block:39px}
 .business-body{padding-top:14px}
 .photo-catalog{padding-top:37px}
 .company-info>div{padding-block:21px}
 .news-layout,.faq-layout{grid-template-columns:minmax(0,1fr);gap:35px}
 .news-heading .display-title{font-size:30px}
 .news-heading .text-link{margin-top:18px}
 .faq-layout>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);column-gap:35px;align-items:start}
 .faq-layout>div:first-child>.eyebrow,.faq-layout>div:first-child>h2,.faq-intro{grid-column:1}
 .faq-photo{grid-column:2;grid-row:1/4;margin-top:0;width:100%;max-width:none}
 .faq-intro{margin-top:16px}
 .contact-reception{grid-template-columns:1fr;gap:18px}
 .contact-telephone{border-left:0;padding-left:0;justify-self:start}
 .recovery-layout{grid-template-columns:1fr;gap:30px}
 .recovery-number{grid-row:1;text-align:left;font-size:110px}
 .recovery-copy h1{font-size:34px}
}
@media (max-width:700px){
 .section-space{padding-block:78px}
 .algit-section{padding-top:68px}
 .display-title{line-height:1.65;letter-spacing:.035em}
 .eyebrow:not(.hero-eyebrow){letter-spacing:.085em}
 .section-heading{margin-bottom:33px}
 .section-intro{padding-bottom:0;line-height:2.05}
 .business-body{padding-top:24px}
 .business-agriculture .business-image-link{border-top-right-radius:24px}
 .business-livestock .business-image-link{border-bottom-left-radius:24px}
 .business-food .business-image-link{border-top-left-radius:24px}
 .business-support{padding-top:31px}
 .products-section .section-heading{margin-bottom:29px}
 .product-panel{padding-block:34px 31px}
 .photo-catalog{padding-top:33px}
 .photo-catalog-heading{margin-bottom:26px}
 .catalog-image{border-top-right-radius:14px}
 .traceability-explanation{margin-top:22px;padding-top:22px}
 .quality-process{border-top-right-radius:42px}
 .company-history li{padding-block:13px}
 .company-info>div{padding-block:19px}
 .news-row{padding-block:24px}
 .news-meta{margin-bottom:12px}
 .everyday-heading h2{line-height:1.65}
 .everyday-image figcaption{margin-top:14px}
 .purchase-checkpoints>div{padding-block:13px}
 .purchase-steps li{padding-block:23px}
 .faq-answer{padding-bottom:27px}
 .contact-heading .display-title{font-size:clamp(27px,6.9vw,32px);line-height:1.7;letter-spacing:.035em}
 .contact-heading-copy>p:last-child{font-size:14px;line-height:2.05;margin-top:20px}
 .agency-photo .photo-window{border-top-right-radius:20px}
 .personal-photo .photo-window{border-bottom-left-radius:20px}
 .site-footer{padding-top:114px}
 .footer-nav>div>span{font-size:12px;line-height:1.8}
 .menu-top{padding-bottom:15px;margin-bottom:13px}
 .mobile-menu .menu-useful-links{gap:0 18px;padding-top:18px}
 .mobile-menu .menu-useful-links a{font-size:12px;min-height:54px}
 .fallback-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 15px}
 .hero-sub-links a{min-height:44px;align-items:center;padding-block:8px}
 .product-facts>div{grid-template-columns:76px minmax(0,1fr);gap:15px;padding-block:11px}
 .product-facts dt{font-size:11px}
 .product-actions .button{min-width:0;max-width:100%;width:100%;font-size:13px}
 .product-actions .text-link{font-size:13px;margin-top:3px}
 .photo-catalog-item h4{font-size:14px;line-height:1.75;min-height:0;margin-bottom:9px}
 .catalog-description{font-size:12px;line-height:1.95}
 .catalog-link{min-height:44px}
 .news-heading .display-title{font-size:29px}
 .news-summary{font-size:12px;line-height:1.95;margin-top:9px}
 .news-catalog-link{font-size:12px;line-height:1.85;gap:15px}
 .purchase-checkpoints{font-size:13px;margin-top:23px}
 .purchase-checkpoints>div{padding-block:12px}
 .faq-layout>div:first-child{display:block}
 .faq-photo{margin-top:25px;max-width:350px}
 .faq-list summary{font-size:14px;line-height:1.9;gap:13px;padding-block:24px}
 .faq-answer{padding-left:31px;padding-right:14px;font-size:14px;line-height:2}
 .contact-entry .button{margin-top:0;font-size:13px;min-height:56px}
 .contact-entry .contact-preparation{margin-bottom:24px}
 .contact-reception{padding-top:23px;gap:19px}
 .contact-reception p{font-size:12px;line-height:2}
 .contact-telephone strong{font-size:23px}
 .contact-shop{padding-top:22px;border-top:1px solid #bfd6cd;margin-top:20px}
 .footer-nav a{font-size:12px;min-height:44px;line-height:1.75}
 .footer-bottom{grid-template-columns:minmax(0,1fr) auto;padding-block:17px;gap:9px 17px}
 .footer-legal-links{grid-column:1;grid-row:1;display:grid;gap:0}
 .footer-legal-links a{font-size:11px;min-height:44px;line-height:1.85}
 .footer-bottom>small{grid-row:2}
 .recovery-header{padding-block:16px}
 .recovery-header>.container{gap:18px}
 .recovery-brand img{width:208px;max-width:100%}
 .recovery-header .text-link{font-size:12px;gap:8px;flex-shrink:0}
 .recovery-main{padding-block:46px 55px}
 .recovery-layout{gap:25px}
 .recovery-number{font-size:88px}
 .recovery-copy h1{font-size:clamp(27px,7.1vw,34px);line-height:1.7;letter-spacing:.035em}
 .recovery-copy>p:not(.eyebrow){font-size:14px;line-height:2;margin-top:20px}
 .recovery-copy>.button{width:100%;min-width:0;margin-top:25px}
 .recovery-links{gap:9px 25px;margin-top:22px}
 .recovery-links .text-link{font-size:12px;gap:15px}
 .recovery-footer>.container{display:grid;gap:12px;font-size:11px}
}
@media (max-width:365px){.menu-brand img{width:198px}.product-facts>div{grid-template-columns:70px minmax(0,1fr);gap:13px}.recovery-header .text-link{font-size:11px}.recovery-brand img{width:184px}}
@media (prefers-reduced-motion:reduce){
 .text-link:focus-visible>span:not(.sr-only),.button:focus-visible>span:not(.sr-only){transform:none}
 .news-row,.faq-list summary,.contact-telephone{transition:none}
}
