:root{--navy:#003d70;--navy-dark:#002f59;--ice:#e8f8ff;--sky:#cfeffc;--ink:#06365f;--line:#cbdde7;--white:#fff;--muted:#5f7484;--danger:#a62424;--success:#087557;--shadow:0 18px 55px rgba(0,46,83,.10)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:124px}
body{margin:0;padding-top:108px;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:#fff}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input,textarea,select{font:inherit}
.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,96px);border-bottom:1px solid #e6eef2;background:rgba(255,255,255,.98);position:fixed;z-index:100;top:0;left:0;right:0;width:100%;box-shadow:0 7px 24px rgba(0,45,80,.07);backdrop-filter:blur(12px)}
.brand{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;width:max-content;color:var(--navy)}
.logo-fish{grid-row:1/3;font-size:34px;transform:scaleX(1.35);margin-right:8px}
.logo-word{font-family:Georgia,serif;font-weight:700;font-size:28px;letter-spacing:-1px}
.logo-tag{font-size:8px;letter-spacing:5px;text-align:center}
.site-header nav,.site-footer nav{display:flex;align-items:center;gap:34px}
.site-header nav>a:not(.button){padding:12px 0;border-bottom:2px solid transparent}
.site-header nav>a.active,.site-header nav>a:not(.button):hover{border-color:var(--navy)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:13px 26px;border:1px solid transparent;cursor:pointer;transition:.2s ease}
.button:hover{transform:translateY(-2px)}
.button-outline{border-color:var(--navy)}
.button-light{background:#fff;color:var(--navy)}
.button-ghost-light{border-color:#fff;color:#fff}
.button-navy{background:var(--navy);color:#fff}
.button.full{width:100%}
.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:8px}
.menu-toggle span{display:block;height:2px;background:var(--navy);margin:8px 0}
.hero{min-height:610px;background-image:linear-gradient(90deg,rgba(0,35,67,.82) 0%,rgba(0,35,67,.30) 48%,rgba(0,35,67,0) 78%),url('images/hero-marbelo.jpg');background-size:cover;background-position:center;display:flex;align-items:center;padding:60px clamp(24px,7vw,120px);color:#fff}
.hero-content{max-width:590px}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:4px;margin:0 0 18px}
.eyebrow.light{color:#fff}
.hero h1,.page-title h1,.contact-aside h1{font-family:'Manrope',sans-serif;font-weight:300;font-size:clamp(52px,7vw,92px);line-height:.98;margin:0 0 20px;letter-spacing:-4px}
.hero p:not(.eyebrow){font-size:20px;margin:0 0 34px}
.section{padding:70px clamp(24px,7vw,120px)}
.section-blue{background:var(--ice)}
.section-heading h2,.origin h2,.nearby h2,.professional h2{font-family:'Manrope',sans-serif;font-weight:300;font-size:clamp(34px,4vw,58px);line-height:1.06;letter-spacing:-2px;margin:0 0 36px}
.product-teasers{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 22px}
.teaser{display:flex;flex-direction:column;gap:7px}
.teaser img{width:100%;height:auto;aspect-ratio:auto;background:#e5f3f8;transition:.3s}
.teaser:hover img{transform:scale(1.015)}
.teaser strong{font-size:18px}
.teaser span{font-size:13px;border-bottom:1px solid #aac5d1;padding-bottom:12px}
.origin{display:grid;grid-template-columns:1fr 1.25fr;min-height:450px}
.origin-copy{display:flex;flex-direction:column;justify-content:center;padding:60px clamp(24px,7vw,120px)}
.origin-copy p{font-size:18px;max-width:460px;line-height:1.55}
.origin img{height:100%;min-height:450px}
.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.recipe-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.recipe-grid h3{font-size:19px;margin:14px 0 7px}
.recipe-grid a{font-size:13px;border-bottom:1px solid #a9c1ce;padding-bottom:7px}
.tips{margin-top:35px;background:var(--ice);display:grid;grid-template-columns:1.3fr 1fr 1fr}
.tips>*{padding:22px 26px;border-right:1px solid #bcd5df}
.professional{display:grid;grid-template-columns:1.45fr 1fr;margin:10px clamp(24px,7vw,120px) 50px}
.professional img{height:100%;min-height:390px}
.professional>div{background:var(--navy);color:#fff;padding:48px}
.professional h2{font-size:45px;margin-bottom:18px}
.professional .button{width:100%;margin-top:12px}
.nearby{margin:0 clamp(24px,7vw,120px) 65px;background:var(--ice);padding:30px 38px}
.nearby>div{display:flex;align-items:center;justify-content:space-between;gap:30px}
.nearby h2{font-size:35px;margin:0}
.site-footer{background:var(--navy-dark);color:#fff;padding:42px clamp(24px,7vw,120px) 24px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:20px}
.brand-light{color:#fff}
.site-footer nav{justify-content:flex-end}
.site-footer p{grid-column:1/-1;font-size:12px;opacity:.65;margin:20px 0 0;border-top:1px solid rgba(255,255,255,.15);padding-top:18px}
.admin-link{opacity:.55;font-size:12px}
.page-width{width:min(1180px,calc(100% - 48px));margin:auto}
.page-title{padding:55px 0 25px}
.page-title h1{font-size:72px}
.page-title p{font-size:22px;margin:0}
.catalog-tools{display:flex;align-items:center;gap:45px;margin-bottom:38px}
.search-box{display:flex;align-items:center;border:1px solid #a9bfcb;width:370px;height:50px;padding:0 15px;gap:10px}
.search-box span{font-size:27px}
.search-box input{border:0;outline:0;width:100%}
.filters{display:flex;align-items:center;gap:26px;overflow:auto}
.filters button{background:none;border:0;color:var(--ink);padding:14px 2px;border-bottom:2px solid transparent;cursor:pointer}
.filters button.active{font-weight:600;border-color:var(--navy)}
.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 28px}
.catalog-card[hidden]{display:none}
.catalog-card img{width:100%;height:auto;aspect-ratio:auto;background:var(--ice)}
.catalog-card h2{font-family:'Manrope';font-weight:400;font-size:30px;margin:12px 0}
.catalog-card dl{margin:0 0 16px}
.catalog-card dl div{display:flex;justify-content:space-between;border-bottom:1px solid #aac2cd;padding:8px 2px}
.catalog-card dt,.catalog-card dd{margin:0}
.catalog-card dd{text-align:right}
.help-banner{background:var(--ice);margin:55px 0;min-height:130px;padding:28px 40px;display:flex;align-items:center;justify-content:space-between;background-image:linear-gradient(90deg,var(--ice) 45%,rgba(232,248,255,.25)),url('images/ocean.jpg');background-size:cover;background-position:center}
.help-banner h2{font:300 33px 'Manrope';margin:0}
.help-banner p{margin:3px 0}
.empty-message{padding:45px;text-align:center;background:var(--ice)}
.contact-page{display:grid;grid-template-columns:37% 63%;min-height:calc(100vh - 108px)}
.contact-aside{background:var(--sky);display:grid;grid-template-rows:auto 1fr}
.contact-aside>div{padding:70px clamp(30px,5vw,75px)}
.contact-aside h1{font-size:64px;margin-top:32px}
.contact-aside p:not(.eyebrow){font:300 26px/1.35 'Manrope'}
.contact-aside img{height:100%;min-height:580px}
.contact-main{padding:65px clamp(30px,6vw,90px)}
.contact-main>h2{font:300 clamp(43px,5vw,68px) 'Manrope';letter-spacing:-3px;margin:0 0 28px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:17px}
.contact-form input,.contact-form textarea{border:1px solid #9fb7c5;padding:14px;background:#fff;min-height:52px;outline:none}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,61,112,.08)}
.contact-form textarea{min-height:135px;resize:vertical}
.contact-form .wide{grid-column:1/-1}
.form-meta{display:flex;justify-content:space-between;font-size:13px}
.form-meta a{text-decoration:underline}
.hp{position:absolute!important;left:-9999px!important}
.form-success{padding:18px;background:#e6f7f0;color:var(--success);margin-bottom:25px}
.company-contacts{border-top:1px solid #a8c4d0;margin-top:48px;padding-top:26px}
.company-contacts h3{font:400 28px 'Manrope'}
.company-contacts>div{display:grid;grid-template-columns:1fr 1.4fr}
.company-contacts p{display:flex;flex-direction:column;padding-right:35px;line-height:1.55}
.company-contacts p+p{border-left:1px solid #aec4cf;padding-left:40px}
.company-contacts strong{margin-top:10px}
.legal{padding:70px 0;max-width:850px}
.legal h1{font:300 56px 'Manrope'}
.legal h2{font:400 28px 'Manrope';margin-top:35px}
.legal p{font-size:18px;line-height:1.7}
.recipes-page{padding-bottom:90px}
.recipes-masthead{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:80px;padding:78px 0 58px;border-bottom:1px solid var(--line)}
.recipes-masthead h1{font:300 clamp(55px,7vw,92px)/.98 'Manrope';letter-spacing:-4px;margin:0}
.recipes-masthead>p{font:300 22px/1.6 'Manrope';margin:0 0 6px;max-width:460px}
.recipe-feature{display:grid;grid-template-columns:1.22fr .78fr;margin:55px 0 85px;background:var(--navy);color:#fff;overflow:hidden}
.recipe-card-media{display:block;aspect-ratio:4/3;overflow:hidden;background:#dcecf3}
.recipe-card-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .55s ease}
.recipe-card-media:hover img{transform:scale(1.025)}
.recipe-feature-copy{position:relative;padding:clamp(38px,5vw,72px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.recipe-index{position:absolute;right:28px;top:20px;font:300 68px 'Manrope';opacity:.12}
.recipe-feature h2{font:300 clamp(46px,5vw,70px)/1 'Manrope';letter-spacing:-3px;margin:6px 0 24px}
.recipe-feature-copy>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:430px;margin:0 0 25px}
.recipe-facts{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}
.recipe-facts span{font-size:12px;letter-spacing:.5px;border:1px solid rgba(255,255,255,.35);padding:7px 11px}
.recipe-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}
.recipe-gallery-heading h2{font:300 clamp(34px,4vw,52px) 'Manrope';margin:0;letter-spacing:-2px}
.recipe-gallery-heading>p{font-size:16px;max-width:330px;line-height:1.6;margin:0}
.recipe-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.recipe-list-card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}
.recipe-list-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.recipe-list-copy{padding:30px 32px 34px}
.recipe-list-card h2{font:300 38px 'Manrope';letter-spacing:-1.5px;margin:10px 0}
.recipe-list-card p{line-height:1.65;margin:0 0 8px}
.recipe-status{font-size:11px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted)}
.text-link{display:inline-block;margin-top:16px;border-bottom:1px solid var(--navy);padding-bottom:4px;font-size:13px;font-weight:500}
.recipe-detail{padding-top:48px}
.recipe-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;background:var(--ice);overflow:hidden}
.recipe-hero-copy{padding:clamp(40px,6vw,80px)}
.recipe-hero h1{font:300 clamp(52px,7vw,92px)/.98 'Manrope';letter-spacing:-4px;margin:18px 0 28px}
.recipe-intro{font-size:19px;line-height:1.7;max-width:570px}
.recipe-hero-media{width:100%;aspect-ratio:4/3;overflow:hidden;align-self:stretch}
.recipe-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.recipe-meta{width:min(1030px,calc(100% - 48px));margin:-38px auto 70px;position:relative;background:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr)}
.recipe-meta div{padding:22px 28px;border-right:1px solid #d5e4ea;display:flex;flex-direction:column;gap:5px}
.recipe-meta div:last-child{border-right:0}
.recipe-meta span{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#526a76}
.recipe-meta strong{font:500 18px 'Manrope'}
.recipe-layout{display:grid;grid-template-columns:.75fr 1.5fr;gap:90px;padding-bottom:80px}
.recipe-layout h2{font:300 40px 'Manrope';margin:10px 0 30px}
.ingredients{background:var(--ice);padding:40px}
.ingredients ul{list-style:none;padding:0;margin:0}
.ingredients li{padding:14px 0;border-bottom:1px solid #bfd5df;line-height:1.45}
.method ol{list-style:none;padding:0;margin:0}
.method li{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid #d5e4ea}
.method li>span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:600}
.method li p{margin:5px 0 0;line-height:1.75}
.recipe-tip{background:var(--sky);padding:28px 32px;border-left:4px solid var(--navy)}
.recipe-tip p{margin-bottom:0;line-height:1.6}
.recipe-cta{background:var(--navy);color:#fff;margin:0 auto 70px;padding:45px max(24px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:25px}
.recipe-cta h2{font:300 42px 'Manrope';margin:8px 0 0}

@media(max-width:900px){body{padding-top:82px}html{scroll-padding-top:96px}.site-header{height:82px;padding:0 20px}
.logo-word{font-size:23px}
.logo-tag{letter-spacing:3px}
.menu-toggle{display:block}
.site-header nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:24px;flex-direction:column;align-items:stretch;gap:8px;box-shadow:var(--shadow)}
.site-header nav.open{display:flex}
.site-header nav>a{text-align:center}
.hero{min-height:540px;background-position:62% center}
.product-teasers,.recipe-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}
.origin,.professional,.contact-page{grid-template-columns:1fr}
.origin img{min-height:330px}
.professional{margin:0}
.tips{grid-template-columns:1fr}
.tips>*{border-right:0;border-bottom:1px solid #bcd5df}
.nearby>div{align-items:flex-start;flex-direction:column}
.site-footer{grid-template-columns:1fr}
.site-footer nav{justify-content:flex-start;flex-wrap:wrap;gap:18px}
.contact-aside{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
.contact-aside img{min-height:420px}
.catalog-tools{align-items:stretch;flex-direction:column;gap:12px}
.search-box{width:100%}
.filters{gap:18px}
.contact-main{padding:45px 25px}
.recipes-masthead{grid-template-columns:1fr;gap:25px}
.recipe-feature{grid-template-columns:1fr}
.recipe-hero{grid-template-columns:1fr}
.recipe-hero-media{aspect-ratio:4/3}
.recipe-layout{grid-template-columns:1fr;gap:42px}
.recipe-meta{margin-top:-25px}
}

@media(max-width:600px){.hero h1,.page-title h1,.contact-aside h1{font-size:49px;letter-spacing:-2px}
.section{padding:50px 20px}
.product-teasers,.recipe-grid,.catalog-grid{grid-template-columns:1fr}
.origin-copy{padding:50px 20px}
.professional>div{padding:35px 22px}
.nearby{margin:0 20px 40px;padding:25px 20px}
.site-footer{padding:35px 20px}
.contact-aside{grid-template-columns:1fr}
.contact-aside img{min-height:330px}
.contact-aside>div{padding:45px 25px}
.contact-form{grid-template-columns:1fr}
.contact-form .wide{grid-column:auto}
.form-meta,.company-contacts>div{display:flex;flex-direction:column;gap:12px}
.company-contacts p+p{border:0;padding-left:0}
.page-width{width:calc(100% - 36px)}
.catalog-page .page-title{padding-top:38px}
.help-banner{padding:25px;align-items:flex-start;flex-direction:column;gap:25px}
.site-footer nav{font-size:14px}
.recipes-masthead{padding:48px 0 38px}
.recipes-masthead h1{font-size:49px;letter-spacing:-2px}
.recipes-masthead>p{font-size:18px}
.recipe-feature{margin:34px 0 60px}
.recipe-feature-copy{padding:38px 24px}
.recipe-feature h2{font-size:47px;letter-spacing:-2px}
.recipe-gallery-heading{align-items:flex-start;flex-direction:column;gap:10px}
.recipe-list-grid{grid-template-columns:1fr}
.recipe-card-media{aspect-ratio:4/3}
.recipe-list-copy{padding:25px 22px 30px}
.recipe-hero-copy{padding:42px 24px}
.recipe-hero h1{letter-spacing:-2px}
.recipe-hero-media{aspect-ratio:4/3}
.recipe-meta{grid-template-columns:1fr 1fr;width:calc(100% - 36px);margin-bottom:45px}
.recipe-meta div:nth-child(2){border-right:0}
.recipe-meta div:nth-child(-n+2){border-bottom:1px solid #d5e4ea}
.recipe-layout{padding-bottom:50px}
.ingredients{padding:28px 22px}
.recipe-cta{align-items:flex-start;flex-direction:column;margin-bottom:35px}
}

